<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>GFile</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
<link rel="home" href="index.html" title="GIO Reference Manual">
<link rel="up" href="file_ops.html" title="File Operations">
<link rel="prev" href="file_ops.html" title="File Operations">
<link rel="next" href="gio-GFileAttribute.html" title="GFileAttribute">
<meta name="generator" content="GTK-Doc V1.17 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
<tr valign="middle">
<td><a accesskey="p" href="file_ops.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
<td><a accesskey="u" href="file_ops.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
<th width="100%" align="center">GIO Reference Manual</th>
<td><a accesskey="n" href="gio-GFileAttribute.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
</tr>
<tr><td colspan="5" class="shortcuts">
<a href="#GFile.synopsis" class="shortcut">Top</a>
                   | 
                  <a href="#GFile.description" class="shortcut">Description</a>
                   | 
                  <a href="#GFile.object-hierarchy" class="shortcut">Object Hierarchy</a>
                   | 
                  <a href="#GFile.prerequisites" class="shortcut">Prerequisites</a>
</td></tr>
</table>
<div class="refentry">
<a name="GFile"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="GFile.top_of_page"></a>GFile</span></h2>
<p>GFile — File and Directory Handling</p>
</td>
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsynopsisdiv">
<a name="GFile.synopsis"></a><h2>Synopsis</h2>
<pre class="synopsis">
#include &lt;gio/gio.h&gt;

                    <a class="link" href="GFile.html#GFile-struct" title="GFile">GFile</a>;
struct              <a class="link" href="GFile.html#GFileIface" title="struct GFileIface">GFileIface</a>;
enum                <a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags">GFileQueryInfoFlags</a>;
enum                <a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags">GFileCreateFlags</a>;
enum                <a class="link" href="GFile.html#GFileCopyFlags" title="enum GFileCopyFlags">GFileCopyFlags</a>;
enum                <a class="link" href="GFile.html#GFileMonitorFlags" title="enum GFileMonitorFlags">GFileMonitorFlags</a>;
enum                <a class="link" href="GFile.html#GFilesystemPreviewType" title="enum GFilesystemPreviewType">GFilesystemPreviewType</a>;
<span class="returnvalue">void</span>                (<a class="link" href="GFile.html#GFileProgressCallback" title="GFileProgressCallback ()">*GFileProgressCallback</a>)            (<em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#goffset"><span class="type">goffset</span></a> current_num_bytes</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#goffset"><span class="type">goffset</span></a> total_num_bytes</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            (<a class="link" href="GFile.html#GFileReadMoreCallback" title="GFileReadMoreCallback ()">*GFileReadMoreCallback</a>)            (<em class="parameter"><code>const <span class="type">char</span> *file_contents</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#goffset"><span class="type">goffset</span></a> file_size</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> callback_data</code></em>);
<a class="link" href="GFile.html" title="GFile"><span class="returnvalue">GFile</span></a> *                  <a class="link" href="GFile.html#g-file-new-for-path" title="g_file_new_for_path ()">g_file_new_for_path</a>            (<em class="parameter"><code>const <span class="type">char</span> *path</code></em>);
<a class="link" href="GFile.html" title="GFile"><span class="returnvalue">GFile</span></a> *                  <a class="link" href="GFile.html#g-file-new-for-uri" title="g_file_new_for_uri ()">g_file_new_for_uri</a>             (<em class="parameter"><code>const <span class="type">char</span> *uri</code></em>);
<a class="link" href="GFile.html" title="GFile"><span class="returnvalue">GFile</span></a> *                  <a class="link" href="GFile.html#g-file-new-for-commandline-arg" title="g_file_new_for_commandline_arg ()">g_file_new_for_commandline_arg</a> (<em class="parameter"><code>const <span class="type">char</span> *arg</code></em>);
<a class="link" href="GFile.html" title="GFile"><span class="returnvalue">GFile</span></a> *                  <a class="link" href="GFile.html#g-file-parse-name" title="g_file_parse_name ()">g_file_parse_name</a>              (<em class="parameter"><code>const <span class="type">char</span> *parse_name</code></em>);
<a class="link" href="GFile.html" title="GFile"><span class="returnvalue">GFile</span></a> *                  <a class="link" href="GFile.html#g-file-dup" title="g_file_dup ()">g_file_dup</a>                     (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>               <a class="link" href="GFile.html#g-file-hash" title="g_file_hash ()">g_file_hash</a>                         (<em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> file</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-equal" title="g_file_equal ()">g_file_equal</a>                        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file1</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file2</code></em>);
<span class="returnvalue">char</span> *                   <a class="link" href="GFile.html#g-file-get-basename" title="g_file_get_basename ()">g_file_get_basename</a>            (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>);
<span class="returnvalue">char</span> *                   <a class="link" href="GFile.html#g-file-get-path" title="g_file_get_path ()">g_file_get_path</a>                (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>);
<span class="returnvalue">char</span> *                   <a class="link" href="GFile.html#g-file-get-uri" title="g_file_get_uri ()">g_file_get_uri</a>                 (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>);
<span class="returnvalue">char</span> *                   <a class="link" href="GFile.html#g-file-get-parse-name" title="g_file_get_parse_name ()">g_file_get_parse_name</a>          (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>);
<a class="link" href="GFile.html" title="GFile"><span class="returnvalue">GFile</span></a> *                  <a class="link" href="GFile.html#g-file-get-parent" title="g_file_get_parent ()">g_file_get_parent</a>              (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-has-parent" title="g_file_has_parent ()">g_file_has_parent</a>                   (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *parent</code></em>);
<a class="link" href="GFile.html" title="GFile"><span class="returnvalue">GFile</span></a> *                  <a class="link" href="GFile.html#g-file-get-child" title="g_file_get_child ()">g_file_get_child</a>               (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *name</code></em>);
<a class="link" href="GFile.html" title="GFile"><span class="returnvalue">GFile</span></a> *                  <a class="link" href="GFile.html#g-file-get-child-for-display-name" title="g_file_get_child_for_display_name ()">g_file_get_child_for_display_name</a>
                                                        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *display_name</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-has-prefix" title="g_file_has_prefix ()">g_file_has_prefix</a>                   (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *prefix</code></em>);
<span class="returnvalue">char</span> *                   <a class="link" href="GFile.html#g-file-get-relative-path" title="g_file_get_relative_path ()">g_file_get_relative_path</a>       (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *parent</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *descendant</code></em>);
<a class="link" href="GFile.html" title="GFile"><span class="returnvalue">GFile</span></a> *                  <a class="link" href="GFile.html#g-file-resolve-relative-path" title="g_file_resolve_relative_path ()">g_file_resolve_relative_path</a>   (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *relative_path</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-is-native" title="g_file_is_native ()">g_file_is_native</a>                    (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-has-uri-scheme" title="g_file_has_uri_scheme ()">g_file_has_uri_scheme</a>               (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *uri_scheme</code></em>);
<span class="returnvalue">char</span> *                   <a class="link" href="GFile.html#g-file-get-uri-scheme" title="g_file_get_uri_scheme ()">g_file_get_uri_scheme</a>          (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>);
<a class="link" href="GFileInputStream.html" title="GFileInputStream"><span class="returnvalue">GFileInputStream</span></a> *       <a class="link" href="GFile.html#g-file-read" title="g_file_read ()">g_file_read</a>                    (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GFile.html#g-file-read-async" title="g_file_read_async ()">g_file_read_async</a>                   (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><span class="type">int</span> io_priority</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<a class="link" href="GFileInputStream.html" title="GFileInputStream"><span class="returnvalue">GFileInputStream</span></a> *       <a class="link" href="GFile.html#g-file-read-finish" title="g_file_read_finish ()">g_file_read_finish</a>             (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a class="link" href="GFileOutputStream.html" title="GFileOutputStream"><span class="returnvalue">GFileOutputStream</span></a> *      <a class="link" href="GFile.html#g-file-append-to" title="g_file_append_to ()">g_file_append_to</a>               (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a class="link" href="GFileOutputStream.html" title="GFileOutputStream"><span class="returnvalue">GFileOutputStream</span></a> *      <a class="link" href="GFile.html#g-file-create" title="g_file_create ()">g_file_create</a>                  (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a class="link" href="GFileOutputStream.html" title="GFileOutputStream"><span class="returnvalue">GFileOutputStream</span></a> *      <a class="link" href="GFile.html#g-file-replace" title="g_file_replace ()">g_file_replace</a>                 (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *etag</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> make_backup</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GFile.html#g-file-append-to-async" title="g_file_append_to_async ()">g_file_append_to_async</a>              (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><span class="type">int</span> io_priority</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<a class="link" href="GFileOutputStream.html" title="GFileOutputStream"><span class="returnvalue">GFileOutputStream</span></a> *      <a class="link" href="GFile.html#g-file-append-to-finish" title="g_file_append_to_finish ()">g_file_append_to_finish</a>        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GFile.html#g-file-create-async" title="g_file_create_async ()">g_file_create_async</a>                 (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><span class="type">int</span> io_priority</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<a class="link" href="GFileOutputStream.html" title="GFileOutputStream"><span class="returnvalue">GFileOutputStream</span></a> *      <a class="link" href="GFile.html#g-file-create-finish" title="g_file_create_finish ()">g_file_create_finish</a>           (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GFile.html#g-file-replace-async" title="g_file_replace_async ()">g_file_replace_async</a>                (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *etag</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> make_backup</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><span class="type">int</span> io_priority</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<a class="link" href="GFileOutputStream.html" title="GFileOutputStream"><span class="returnvalue">GFileOutputStream</span></a> *      <a class="link" href="GFile.html#g-file-replace-finish" title="g_file_replace_finish ()">g_file_replace_finish</a>          (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a class="link" href="GFileInfo.html" title="GFileInfo"><span class="returnvalue">GFileInfo</span></a> *              <a class="link" href="GFile.html#g-file-query-info" title="g_file_query_info ()">g_file_query_info</a>              (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *attributes</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GFile.html#g-file-query-info-async" title="g_file_query_info_async ()">g_file_query_info_async</a>             (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *attributes</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><span class="type">int</span> io_priority</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<a class="link" href="GFileInfo.html" title="GFileInfo"><span class="returnvalue">GFileInfo</span></a> *              <a class="link" href="GFile.html#g-file-query-info-finish" title="g_file_query_info_finish ()">g_file_query_info_finish</a>       (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-query-exists" title="g_file_query_exists ()">g_file_query_exists</a>                 (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>);
<a class="link" href="GFileInfo.html#GFileType" title="enum GFileType"><span class="returnvalue">GFileType</span></a>           <a class="link" href="GFile.html#g-file-query-file-type" title="g_file_query_file_type ()">g_file_query_file_type</a>              (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>);
<a class="link" href="GFileInfo.html" title="GFileInfo"><span class="returnvalue">GFileInfo</span></a> *              <a class="link" href="GFile.html#g-file-query-filesystem-info" title="g_file_query_filesystem_info ()">g_file_query_filesystem_info</a>   (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *attributes</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GFile.html#g-file-query-filesystem-info-async" title="g_file_query_filesystem_info_async ()">g_file_query_filesystem_info_async</a>  (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *attributes</code></em>,
                                                         <em class="parameter"><code><span class="type">int</span> io_priority</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<a class="link" href="GFileInfo.html" title="GFileInfo"><span class="returnvalue">GFileInfo</span></a> *              <a class="link" href="GFile.html#g-file-query-filesystem-info-finish" title="g_file_query_filesystem_info_finish ()">g_file_query_filesystem_info_finish</a>
                                                        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a class="link" href="GAppInfo.html" title="GAppInfo"><span class="returnvalue">GAppInfo</span></a> *          <a class="link" href="GFile.html#g-file-query-default-handler" title="g_file_query_default_handler ()">g_file_query_default_handler</a>        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a class="link" href="GMount.html" title="GMount"><span class="returnvalue">GMount</span></a> *                 <a class="link" href="GFile.html#g-file-find-enclosing-mount" title="g_file_find_enclosing_mount ()">g_file_find_enclosing_mount</a>    (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GFile.html#g-file-find-enclosing-mount-async" title="g_file_find_enclosing_mount_async ()">g_file_find_enclosing_mount_async</a>   (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><span class="type">int</span> io_priority</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<a class="link" href="GMount.html" title="GMount"><span class="returnvalue">GMount</span></a> *                 <a class="link" href="GFile.html#g-file-find-enclosing-mount-finish" title="g_file_find_enclosing_mount_finish ()">g_file_find_enclosing_mount_finish</a>
                                                        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a class="link" href="GFileEnumerator.html" title="GFileEnumerator"><span class="returnvalue">GFileEnumerator</span></a> *        <a class="link" href="GFile.html#g-file-enumerate-children" title="g_file_enumerate_children ()">g_file_enumerate_children</a>      (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *attributes</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GFile.html#g-file-enumerate-children-async" title="g_file_enumerate_children_async ()">g_file_enumerate_children_async</a>     (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *attributes</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><span class="type">int</span> io_priority</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<a class="link" href="GFileEnumerator.html" title="GFileEnumerator"><span class="returnvalue">GFileEnumerator</span></a> *        <a class="link" href="GFile.html#g-file-enumerate-children-finish" title="g_file_enumerate_children_finish ()">g_file_enumerate_children_finish</a>
                                                        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a class="link" href="GFile.html" title="GFile"><span class="returnvalue">GFile</span></a> *                  <a class="link" href="GFile.html#g-file-set-display-name" title="g_file_set_display_name ()">g_file_set_display_name</a>        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *display_name</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GFile.html#g-file-set-display-name-async" title="g_file_set_display_name_async ()">g_file_set_display_name_async</a>       (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *display_name</code></em>,
                                                         <em class="parameter"><code><span class="type">int</span> io_priority</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<a class="link" href="GFile.html" title="GFile"><span class="returnvalue">GFile</span></a> *                  <a class="link" href="GFile.html#g-file-set-display-name-finish" title="g_file_set_display_name_finish ()">g_file_set_display_name_finish</a> (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-delete" title="g_file_delete ()">g_file_delete</a>                       (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-trash" title="g_file_trash ()">g_file_trash</a>                        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-copy" title="g_file_copy ()">g_file_copy</a>                         (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *source</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *destination</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCopyFlags" title="enum GFileCopyFlags"><span class="type">GFileCopyFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileProgressCallback" title="GFileProgressCallback ()"><span class="type">GFileProgressCallback</span></a> progress_callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> progress_callback_data</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GFile.html#g-file-copy-async" title="g_file_copy_async ()">g_file_copy_async</a>                   (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *source</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *destination</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCopyFlags" title="enum GFileCopyFlags"><span class="type">GFileCopyFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><span class="type">int</span> io_priority</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileProgressCallback" title="GFileProgressCallback ()"><span class="type">GFileProgressCallback</span></a> progress_callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> progress_callback_data</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-copy-finish" title="g_file_copy_finish ()">g_file_copy_finish</a>                  (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-move" title="g_file_move ()">g_file_move</a>                         (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *source</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *destination</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCopyFlags" title="enum GFileCopyFlags"><span class="type">GFileCopyFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileProgressCallback" title="GFileProgressCallback ()"><span class="type">GFileProgressCallback</span></a> progress_callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> progress_callback_data</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-make-directory" title="g_file_make_directory ()">g_file_make_directory</a>               (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-make-directory-with-parents" title="g_file_make_directory_with_parents ()">g_file_make_directory_with_parents</a>  (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-make-symbolic-link" title="g_file_make_symbolic_link ()">g_file_make_symbolic_link</a>           (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *symlink_value</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a class="link" href="gio-GFileAttribute.html#GFileAttributeInfoList" title="GFileAttributeInfoList"><span class="returnvalue">GFileAttributeInfoList</span></a> * <a class="link" href="GFile.html#g-file-query-settable-attributes" title="g_file_query_settable_attributes ()">g_file_query_settable_attributes</a>
                                                        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a class="link" href="gio-GFileAttribute.html#GFileAttributeInfoList" title="GFileAttributeInfoList"><span class="returnvalue">GFileAttributeInfoList</span></a> * <a class="link" href="GFile.html#g-file-query-writable-namespaces" title="g_file_query_writable_namespaces ()">g_file_query_writable_namespaces</a>
                                                        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-set-attribute" title="g_file_set_attribute ()">g_file_set_attribute</a>                (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *attribute</code></em>,
                                                         <em class="parameter"><code><a class="link" href="gio-GFileAttribute.html#GFileAttributeType" title="enum GFileAttributeType"><span class="type">GFileAttributeType</span></a> type</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> value_p</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-set-attributes-from-info" title="g_file_set_attributes_from_info ()">g_file_set_attributes_from_info</a>     (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFileInfo.html" title="GFileInfo"><span class="type">GFileInfo</span></a> *info</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GFile.html#g-file-set-attributes-async" title="g_file_set_attributes_async ()">g_file_set_attributes_async</a>         (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFileInfo.html" title="GFileInfo"><span class="type">GFileInfo</span></a> *info</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><span class="type">int</span> io_priority</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-set-attributes-finish" title="g_file_set_attributes_finish ()">g_file_set_attributes_finish</a>        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *result</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFileInfo.html" title="GFileInfo"><span class="type">GFileInfo</span></a> **info</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-set-attribute-string" title="g_file_set_attribute_string ()">g_file_set_attribute_string</a>         (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *attribute</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *value</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-set-attribute-byte-string" title="g_file_set_attribute_byte_string ()">g_file_set_attribute_byte_string</a>    (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *attribute</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *value</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-set-attribute-uint32" title="g_file_set_attribute_uint32 ()">g_file_set_attribute_uint32</a>         (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *attribute</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> value</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-set-attribute-int32" title="g_file_set_attribute_int32 ()">g_file_set_attribute_int32</a>          (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *attribute</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gint32"><span class="type">gint32</span></a> value</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-set-attribute-uint64" title="g_file_set_attribute_uint64 ()">g_file_set_attribute_uint64</a>         (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *attribute</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a> value</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-set-attribute-int64" title="g_file_set_attribute_int64 ()">g_file_set_attribute_int64</a>          (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *attribute</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> value</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GFile.html#g-file-mount-mountable" title="g_file_mount_mountable ()">g_file_mount_mountable</a>              (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GMount.html#GMountMountFlags" title="enum GMountMountFlags"><span class="type">GMountMountFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GMountOperation.html" title="GMountOperation"><span class="type">GMountOperation</span></a> *mount_operation</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<a class="link" href="GFile.html" title="GFile"><span class="returnvalue">GFile</span></a> *                  <a class="link" href="GFile.html#g-file-mount-mountable-finish" title="g_file_mount_mountable_finish ()">g_file_mount_mountable_finish</a>  (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *result</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GFile.html#g-file-unmount-mountable" title="g_file_unmount_mountable ()">g_file_unmount_mountable</a>            (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GMount.html#GMountUnmountFlags" title="enum GMountUnmountFlags"><span class="type">GMountUnmountFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-unmount-mountable-finish" title="g_file_unmount_mountable_finish ()">g_file_unmount_mountable_finish</a>     (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *result</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GFile.html#g-file-unmount-mountable-with-operation" title="g_file_unmount_mountable_with_operation ()">g_file_unmount_mountable_with_operation</a>
                                                        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GMount.html#GMountUnmountFlags" title="enum GMountUnmountFlags"><span class="type">GMountUnmountFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GMountOperation.html" title="GMountOperation"><span class="type">GMountOperation</span></a> *mount_operation</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-unmount-mountable-with-operation-finish" title="g_file_unmount_mountable_with_operation_finish ()">g_file_unmount_mountable_with_operation_finish</a>
                                                        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *result</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GFile.html#g-file-eject-mountable" title="g_file_eject_mountable ()">g_file_eject_mountable</a>              (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GMount.html#GMountUnmountFlags" title="enum GMountUnmountFlags"><span class="type">GMountUnmountFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-eject-mountable-finish" title="g_file_eject_mountable_finish ()">g_file_eject_mountable_finish</a>       (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *result</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GFile.html#g-file-eject-mountable-with-operation" title="g_file_eject_mountable_with_operation ()">g_file_eject_mountable_with_operation</a>
                                                        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GMount.html#GMountUnmountFlags" title="enum GMountUnmountFlags"><span class="type">GMountUnmountFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GMountOperation.html" title="GMountOperation"><span class="type">GMountOperation</span></a> *mount_operation</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-eject-mountable-with-operation-finish" title="g_file_eject_mountable_with_operation_finish ()">g_file_eject_mountable_with_operation_finish</a>
                                                        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *result</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GFile.html#g-file-start-mountable" title="g_file_start_mountable ()">g_file_start_mountable</a>              (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GDrive.html#GDriveStartFlags" title="enum GDriveStartFlags"><span class="type">GDriveStartFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GMountOperation.html" title="GMountOperation"><span class="type">GMountOperation</span></a> *start_operation</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-start-mountable-finish" title="g_file_start_mountable_finish ()">g_file_start_mountable_finish</a>       (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *result</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GFile.html#g-file-stop-mountable" title="g_file_stop_mountable ()">g_file_stop_mountable</a>               (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GMount.html#GMountUnmountFlags" title="enum GMountUnmountFlags"><span class="type">GMountUnmountFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GMountOperation.html" title="GMountOperation"><span class="type">GMountOperation</span></a> *mount_operation</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-stop-mountable-finish" title="g_file_stop_mountable_finish ()">g_file_stop_mountable_finish</a>        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *result</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GFile.html#g-file-poll-mountable" title="g_file_poll_mountable ()">g_file_poll_mountable</a>               (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-poll-mountable-finish" title="g_file_poll_mountable_finish ()">g_file_poll_mountable_finish</a>        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *result</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GFile.html#g-file-mount-enclosing-volume" title="g_file_mount_enclosing_volume ()">g_file_mount_enclosing_volume</a>       (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *location</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GMount.html#GMountMountFlags" title="enum GMountMountFlags"><span class="type">GMountMountFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GMountOperation.html" title="GMountOperation"><span class="type">GMountOperation</span></a> *mount_operation</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-mount-enclosing-volume-finish" title="g_file_mount_enclosing_volume_finish ()">g_file_mount_enclosing_volume_finish</a>
                                                        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *location</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *result</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a class="link" href="GFileMonitor.html" title="GFileMonitor"><span class="returnvalue">GFileMonitor</span></a> *            <a class="link" href="GFile.html#g-file-monitor-directory" title="g_file_monitor_directory ()">g_file_monitor_directory</a>      (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileMonitorFlags" title="enum GFileMonitorFlags"><span class="type">GFileMonitorFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a class="link" href="GFileMonitor.html" title="GFileMonitor"><span class="returnvalue">GFileMonitor</span></a> *            <a class="link" href="GFile.html#g-file-monitor-file" title="g_file_monitor_file ()">g_file_monitor_file</a>           (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileMonitorFlags" title="enum GFileMonitorFlags"><span class="type">GFileMonitorFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a class="link" href="GFileMonitor.html" title="GFileMonitor"><span class="returnvalue">GFileMonitor</span></a> *            <a class="link" href="GFile.html#g-file-monitor" title="g_file_monitor ()">g_file_monitor</a>                (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileMonitorFlags" title="enum GFileMonitorFlags"><span class="type">GFileMonitorFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-load-contents" title="g_file_load_contents ()">g_file_load_contents</a>                (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><span class="type">char</span> **contents</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> *length</code></em>,
                                                         <em class="parameter"><code><span class="type">char</span> **etag_out</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GFile.html#g-file-load-contents-async" title="g_file_load_contents_async ()">g_file_load_contents_async</a>          (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-load-contents-finish" title="g_file_load_contents_finish ()">g_file_load_contents_finish</a>         (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><span class="type">char</span> **contents</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> *length</code></em>,
                                                         <em class="parameter"><code><span class="type">char</span> **etag_out</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GFile.html#g-file-load-partial-contents-async" title="g_file_load_partial_contents_async ()">g_file_load_partial_contents_async</a>  (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileReadMoreCallback" title="GFileReadMoreCallback ()"><span class="type">GFileReadMoreCallback</span></a> read_more_callback</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-load-partial-contents-finish" title="g_file_load_partial_contents_finish ()">g_file_load_partial_contents_finish</a> (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><span class="type">char</span> **contents</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> *length</code></em>,
                                                         <em class="parameter"><code><span class="type">char</span> **etag_out</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-replace-contents" title="g_file_replace_contents ()">g_file_replace_contents</a>             (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *contents</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> length</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *etag</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> make_backup</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><span class="type">char</span> **new_etag</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GFile.html#g-file-replace-contents-async" title="g_file_replace_contents_async ()">g_file_replace_contents_async</a>       (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *contents</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> length</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *etag</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> make_backup</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-replace-contents-finish" title="g_file_replace_contents_finish ()">g_file_replace_contents_finish</a>      (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><span class="type">char</span> **new_etag</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-copy-attributes" title="g_file_copy_attributes ()">g_file_copy_attributes</a>              (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *source</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *destination</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCopyFlags" title="enum GFileCopyFlags"><span class="type">GFileCopyFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a class="link" href="GFileIOStream.html" title="GFileIOStream"><span class="returnvalue">GFileIOStream</span></a> *          <a class="link" href="GFile.html#g-file-create-readwrite" title="g_file_create_readwrite ()">g_file_create_readwrite</a>        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GFile.html#g-file-create-readwrite-async" title="g_file_create_readwrite_async ()">g_file_create_readwrite_async</a>       (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><span class="type">int</span> io_priority</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<a class="link" href="GFileIOStream.html" title="GFileIOStream"><span class="returnvalue">GFileIOStream</span></a> *          <a class="link" href="GFile.html#g-file-create-readwrite-finish" title="g_file_create_readwrite_finish ()">g_file_create_readwrite_finish</a> (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a class="link" href="GFileIOStream.html" title="GFileIOStream"><span class="returnvalue">GFileIOStream</span></a> *          <a class="link" href="GFile.html#g-file-open-readwrite" title="g_file_open_readwrite ()">g_file_open_readwrite</a>          (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GFile.html#g-file-open-readwrite-async" title="g_file_open_readwrite_async ()">g_file_open_readwrite_async</a>         (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><span class="type">int</span> io_priority</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<a class="link" href="GFileIOStream.html" title="GFileIOStream"><span class="returnvalue">GFileIOStream</span></a> *          <a class="link" href="GFile.html#g-file-open-readwrite-finish" title="g_file_open_readwrite_finish ()">g_file_open_readwrite_finish</a>   (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a class="link" href="GFileIOStream.html" title="GFileIOStream"><span class="returnvalue">GFileIOStream</span></a> *          <a class="link" href="GFile.html#g-file-replace-readwrite" title="g_file_replace_readwrite ()">g_file_replace_readwrite</a>       (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *etag</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> make_backup</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GFile.html#g-file-replace-readwrite-async" title="g_file_replace_readwrite_async ()">g_file_replace_readwrite_async</a>      (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *etag</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> make_backup</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><span class="type">int</span> io_priority</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);
<a class="link" href="GFileIOStream.html" title="GFileIOStream"><span class="returnvalue">GFileIOStream</span></a> *          <a class="link" href="GFile.html#g-file-replace-readwrite-finish" title="g_file_replace_readwrite_finish ()">g_file_replace_readwrite_finish</a>
                                                        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
<a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GFile.html#g-file-supports-thread-contexts" title="g_file_supports_thread_contexts ()">g_file_supports_thread_contexts</a>     (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>);
</pre>
</div>
<div class="refsect1">
<a name="GFile.object-hierarchy"></a><h2>Object Hierarchy</h2>
<pre class="synopsis">
  GInterface
   +----GFile
</pre>
</div>
<div class="refsect1">
<a name="GFile.prerequisites"></a><h2>Prerequisites</h2>
<p>
GFile requires
 <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#GObject">GObject</a>.</p>
</div>
<div class="refsect1">
<a name="GFile.description"></a><h2>Description</h2>
<p>
<a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> is a high level abstraction for manipulating files on a 
virtual file system. <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>s are lightweight, immutable 
objects that do no I/O upon creation. It is necessary to understand that
<a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> objects do not represent files, merely an identifier for a file. All
file content I/O is implemented as streaming operations (see <a class="link" href="GInputStream.html" title="GInputStream"><span class="type">GInputStream</span></a> and 
<a class="link" href="GOutputStream.html" title="GOutputStream"><span class="type">GOutputStream</span></a>).
</p>
<p>
To construct a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>, you can use: 
<a class="link" href="GFile.html#g-file-new-for-path" title="g_file_new_for_path ()"><code class="function">g_file_new_for_path()</code></a> if you have a path.
<a class="link" href="GFile.html#g-file-new-for-uri" title="g_file_new_for_uri ()"><code class="function">g_file_new_for_uri()</code></a> if you have a URI.
<a class="link" href="GFile.html#g-file-new-for-commandline-arg" title="g_file_new_for_commandline_arg ()"><code class="function">g_file_new_for_commandline_arg()</code></a> for a command line argument.
<a class="link" href="GFile.html#g-file-parse-name" title="g_file_parse_name ()"><code class="function">g_file_parse_name()</code></a> from a utf8 string gotten from <a class="link" href="GFile.html#g-file-get-parse-name" title="g_file_get_parse_name ()"><code class="function">g_file_get_parse_name()</code></a>.
</p>
<p>
One way to think of a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> is as an abstraction of a pathname. For normal
files the system pathname is what is stored internally, but as <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>s
are extensible it could also be something else that corresponds to a pathname
in a userspace implementation of a filesystem.
</p>
<p>
<a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>s make up hierarchies of directories and files that correspond to the
files on a filesystem. You can move through the file system with <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> using
<a class="link" href="GFile.html#g-file-get-parent" title="g_file_get_parent ()"><code class="function">g_file_get_parent()</code></a> to get an identifier for the parent directory, <a class="link" href="GFile.html#g-file-get-child" title="g_file_get_child ()"><code class="function">g_file_get_child()</code></a>
to get a child within a directory, <a class="link" href="GFile.html#g-file-resolve-relative-path" title="g_file_resolve_relative_path ()"><code class="function">g_file_resolve_relative_path()</code></a> to resolve a relative
path between two <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>s. There can be multiple hierarchies, so you may not
end up at the same root if you repeatedly call <a class="link" href="GFile.html#g-file-get-parent" title="g_file_get_parent ()"><code class="function">g_file_get_parent()</code></a> on two different
files.
</p>
<p>
All <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>s have a basename (get with <a class="link" href="GFile.html#g-file-get-basename" title="g_file_get_basename ()"><code class="function">g_file_get_basename()</code></a>). These names
are byte strings that are used to identify the file on the filesystem (relative to
its parent directory) and there is no guarantees that they have any particular charset
encoding or even make any sense at all. If you want to use filenames in a user
interface you should use the display name that you can get by requesting the
<a class="link" href="GFileInfo.html#G-FILE-ATTRIBUTE-STANDARD-DISPLAY-NAME:CAPS" title="G_FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME"><code class="literal">G_FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME</code></a> attribute with <a class="link" href="GFile.html#g-file-query-info" title="g_file_query_info ()"><code class="function">g_file_query_info()</code></a>.
This is guaranteed to be in utf8 and can be used in a user interface. But always
store the real basename or the <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> to use to actually access the file, because
there is no way to go from a display name to the actual name.
</p>
<p>
Using <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> as an identifier has the same weaknesses as using a path in that
there may be multiple aliases for the same file. For instance, hard or
soft links may cause two different <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>s to refer to the same file.
Other possible causes for aliases are: case insensitive filesystems, short
and long names on Fat/NTFS, or bind mounts in Linux. If you want to check if
two <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>s point to the same file you can query for the
<a class="link" href="GFileInfo.html#G-FILE-ATTRIBUTE-ID-FILE:CAPS" title="G_FILE_ATTRIBUTE_ID_FILE"><code class="literal">G_FILE_ATTRIBUTE_ID_FILE</code></a> attribute. Note that <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> does some trivial
canonicalization of pathnames passed in, so that trivial differences in the
path string used at creation (duplicated slashes, slash at end of path, "."
or ".." path segments, etc) does not create different <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>s.
</p>
<p>
Many <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> operations have both synchronous and asynchronous versions 
to suit your application. Asynchronous versions of synchronous functions 
simply have <a class="link" href="async.html" title="Asynchronous I/O"><code class="function">_async()</code></a> appended to their function names. The asynchronous 
I/O functions call a <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> which is then used to finalize 
the operation, producing a GAsyncResult which is then passed to the 
function's matching <code class="function">_finish()</code> operation. 
</p>
<p>
Some <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> operations do not have synchronous analogs, as they may
take a very long time to finish, and blocking may leave an application
unusable. Notable cases include:
<a class="link" href="GFile.html#g-file-mount-mountable" title="g_file_mount_mountable ()"><code class="function">g_file_mount_mountable()</code></a> to mount a mountable file.
<a class="link" href="GFile.html#g-file-unmount-mountable-with-operation" title="g_file_unmount_mountable_with_operation ()"><code class="function">g_file_unmount_mountable_with_operation()</code></a> to unmount a mountable file.
<a class="link" href="GFile.html#g-file-eject-mountable-with-operation" title="g_file_eject_mountable_with_operation ()"><code class="function">g_file_eject_mountable_with_operation()</code></a> to eject a mountable file.
</p>
<p>
</p>
<p><a name="gfile-etag"></a>
One notable feature of <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>s are entity tags, or "etags" for 
short. Entity tags are somewhat like a more abstract version of the 
traditional mtime, and can be used to quickly determine if the file has
been modified from the version on the file system. See the HTTP 1.1 
<a class="ulink" href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html" target="_top">specification</a>
for HTTP Etag headers, which are a very similar concept.
</p>
<p>
</p>
</div>
<div class="refsect1">
<a name="GFile.details"></a><h2>Details</h2>
<div class="refsect2">
<a name="GFile-struct"></a><h3>GFile</h3>
<pre class="programlisting">typedef struct _GFile GFile;</pre>
<p>
A handle to an object implementing the <a class="link" href="GFile.html#GFileIface" title="struct GFileIface"><span class="type">GFileIface</span></a> interface.
Generally stores a location within the file system. Handles do not
necessarily represent files or directories that currently exist.
</p>
</div>
<hr>
<div class="refsect2">
<a name="GFileIface"></a><h3>struct GFileIface</h3>
<pre class="programlisting">struct GFileIface {
  GTypeInterface g_iface;

  /* Virtual Table */

  GFile *             (* dup)                         (GFile         *file);
  guint               (* hash)                        (GFile         *file);
  gboolean            (* equal)                       (GFile         *file1,
                                                       GFile         *file2);
  gboolean            (* is_native)                   (GFile         *file);
  gboolean            (* has_uri_scheme)              (GFile         *file,
                                                       const char    *uri_scheme);
  char *              (* get_uri_scheme)              (GFile         *file);
  char *              (* get_basename)                (GFile         *file);
  char *              (* get_path)                    (GFile         *file);
  char *              (* get_uri)                     (GFile         *file);
  char *              (* get_parse_name)              (GFile         *file);
  GFile *             (* get_parent)                  (GFile         *file);
  gboolean            (* prefix_matches)              (GFile         *prefix,
                                                       GFile         *file);
  char *              (* get_relative_path)           (GFile         *parent,
                                                       GFile         *descendant);
  GFile *             (* resolve_relative_path)       (GFile        *file,
                                                       const char   *relative_path);
  GFile *             (* get_child_for_display_name)  (GFile        *file,
                                                       const char   *display_name,
                                                       GError      **error);

  GFileEnumerator *   (* enumerate_children)          (GFile                *file,
                                                       const char           *attributes,
                                                       GFileQueryInfoFlags   flags,
                                                       GCancellable         *cancellable,
                                                       GError              **error);
  void                (* enumerate_children_async)    (GFile                *file,
                                                       const char           *attributes,
                                                       GFileQueryInfoFlags   flags,
                                                       int                   io_priority,
                                                       GCancellable         *cancellable,
                                                       GAsyncReadyCallback   callback,
                                                       gpointer              user_data);
  GFileEnumerator *   (* enumerate_children_finish)   (GFile                *file,
                                                       GAsyncResult         *res,
                                                       GError              **error);

  GFileInfo *         (* query_info)                  (GFile                *file,
                                                       const char           *attributes,
                                                       GFileQueryInfoFlags   flags,
                                                       GCancellable         *cancellable,
                                                       GError              **error);
  void                (* query_info_async)            (GFile                *file,
                                                       const char           *attributes,
                                                       GFileQueryInfoFlags   flags,
                                                       int                   io_priority,
                                                       GCancellable         *cancellable,
                                                       GAsyncReadyCallback   callback,
                                                       gpointer              user_data);
  GFileInfo *         (* query_info_finish)           (GFile                *file,
                                                       GAsyncResult         *res,
                                                       GError              **error);

  GFileInfo *         (* query_filesystem_info)       (GFile                *file,
                                                       const char           *attributes,
                                                       GCancellable         *cancellable,
                                                       GError              **error);
  void                (* query_filesystem_info_async) (GFile                *file,
                                                       const char           *attributes,
                                                       int                   io_priority,
                                                       GCancellable         *cancellable,
                                                       GAsyncReadyCallback   callback,
                                                       gpointer              user_data);
  GFileInfo *         (* query_filesystem_info_finish)(GFile                *file,
                                                       GAsyncResult         *res,
                                                       GError              **error);

  GMount *            (* find_enclosing_mount)        (GFile                *file,
                                                       GCancellable         *cancellable,
                                                       GError              **error);
  void                (* find_enclosing_mount_async)  (GFile                *file,
                                                       int                   io_priority,
                                                       GCancellable         *cancellable,
                                                       GAsyncReadyCallback   callback,
                                                       gpointer              user_data);
  GMount *            (* find_enclosing_mount_finish) (GFile                *file,
                                                       GAsyncResult         *res,
                                                       GError              **error);

  GFile *             (* set_display_name)            (GFile                *file,
                                                       const char           *display_name,
                                                       GCancellable         *cancellable,
                                                       GError              **error);
  void                (* set_display_name_async)      (GFile                *file,
                                                       const char           *display_name,
                                                       int                   io_priority,
                                                       GCancellable         *cancellable,
                                                       GAsyncReadyCallback   callback,
                                                       gpointer              user_data);
  GFile *             (* set_display_name_finish)     (GFile                *file,
                                                       GAsyncResult         *res,
                                                       GError              **error);

  GFileAttributeInfoList * (* query_settable_attributes)    (GFile          *file,
                                                             GCancellable   *cancellable,
                                                             GError        **error);
  void                (* _query_settable_attributes_async)  (void);
  void                (* _query_settable_attributes_finish) (void);

  GFileAttributeInfoList * (* query_writable_namespaces)    (GFile          *file,
                                                             GCancellable   *cancellable,
                                                             GError        **error);
  void                (* _query_writable_namespaces_async)  (void);
  void                (* _query_writable_namespaces_finish) (void);

  gboolean            (* set_attribute)               (GFile                *file,
                                                       const char           *attribute,
                                                       GFileAttributeType    type,
                                                       gpointer              value_p,
                                                       GFileQueryInfoFlags   flags,
                                                       GCancellable         *cancellable,
                                                       GError              **error);
  gboolean            (* set_attributes_from_info)    (GFile                *file,
                                                       GFileInfo            *info,
                                                       GFileQueryInfoFlags   flags,
                                                       GCancellable         *cancellable,
                                                       GError              **error);
  void                (* set_attributes_async)        (GFile                *file,
                                                       GFileInfo            *info,
                                                       GFileQueryInfoFlags   flags,
                                                       int                   io_priority,
                                                       GCancellable         *cancellable,
                                                       GAsyncReadyCallback   callback,
                                                       gpointer              user_data);
  gboolean            (* set_attributes_finish)       (GFile                *file,
                                                       GAsyncResult         *result,
                                                       GFileInfo           **info,
                                                       GError              **error);

  GFileInputStream *  (* read_fn)                     (GFile                *file,
                                                       GCancellable         *cancellable,
                                                       GError              **error);
  void                (* read_async)                  (GFile                *file,
                                                       int                   io_priority,
                                                       GCancellable         *cancellable,
                                                       GAsyncReadyCallback   callback,
                                                       gpointer              user_data);
  GFileInputStream *  (* read_finish)                 (GFile                *file,
                                                       GAsyncResult         *res,
                                                       GError              **error);

  GFileOutputStream * (* append_to)                   (GFile                *file,
                                                       GFileCreateFlags      flags,
                                                       GCancellable         *cancellable,
                                                       GError              **error);
  void                (* append_to_async)             (GFile                *file,
                                                       GFileCreateFlags      flags,
                                                       int                   io_priority,
                                                       GCancellable         *cancellable,
                                                       GAsyncReadyCallback   callback,
                                                       gpointer              user_data);
  GFileOutputStream * (* append_to_finish)            (GFile                *file,
                                                       GAsyncResult         *res,
                                                       GError              **error);

  GFileOutputStream * (* create)                      (GFile                *file,
                                                       GFileCreateFlags      flags,
                                                       GCancellable         *cancellable,
                                                       GError              **error);
  void                (* create_async)                (GFile                *file,
                                                       GFileCreateFlags      flags,
                                                       int                   io_priority,
                                                       GCancellable         *cancellable,
                                                       GAsyncReadyCallback   callback,
                                                       gpointer              user_data);
  GFileOutputStream * (* create_finish)               (GFile                *file,
                                                       GAsyncResult         *res,
                                                       GError              **error);

  GFileOutputStream * (* replace)                     (GFile                *file,
                                                       const char           *etag,
                                                       gboolean              make_backup,
                                                       GFileCreateFlags      flags,
                                                       GCancellable         *cancellable,
                                                       GError              **error);
  void                (* replace_async)               (GFile                *file,
                                                       const char           *etag,
                                                       gboolean              make_backup,
                                                       GFileCreateFlags      flags,
                                                       int                   io_priority,
                                                       GCancellable         *cancellable,
                                                       GAsyncReadyCallback   callback,
                                                       gpointer              user_data);
  GFileOutputStream * (* replace_finish)              (GFile                *file,
                                                       GAsyncResult         *res,
                                                       GError              **error);

  gboolean            (* delete_file)                 (GFile                *file,
                                                       GCancellable         *cancellable,
                                                       GError              **error);
  void                (* _delete_file_async)          (void);
  void                (* _delete_file_finish)         (void);

  gboolean            (* trash)                       (GFile                *file,
                                                       GCancellable         *cancellable,
                                                       GError              **error);
  void                (* _trash_async)                (void);
  void                (* _trash_finish)               (void);

  gboolean            (* make_directory)              (GFile                *file,
                                                       GCancellable         *cancellable,
                                                       GError              **error);
  void                (* _make_directory_async)       (void);
  void                (* _make_directory_finish)      (void);

  gboolean            (* make_symbolic_link)          (GFile                *file,
                                                       const char           *symlink_value,
                                                       GCancellable         *cancellable,
                                                       GError              **error);
  void                (* _make_symbolic_link_async)   (void);
  void                (* _make_symbolic_link_finish)  (void);

  gboolean            (* copy)                        (GFile                *source,
                                                       GFile                *destination,
                                                       GFileCopyFlags        flags,
                                                       GCancellable         *cancellable,
                                                       GFileProgressCallback progress_callback,
                                                       gpointer              progress_callback_data,
                                                       GError              **error);
  void                (* copy_async)                  (GFile                *source,
                                                       GFile                *destination,
                                                       GFileCopyFlags        flags,
                                                       int                   io_priority,
                                                       GCancellable         *cancellable,
                                                       GFileProgressCallback progress_callback,
                                                       gpointer              progress_callback_data,
                                                       GAsyncReadyCallback   callback,
                                                       gpointer              user_data);
  gboolean            (* copy_finish)                 (GFile                *file,
                                                       GAsyncResult         *res,
                                                       GError              **error);

  gboolean            (* move)                        (GFile                *source,
                                                       GFile                *destination,
                                                       GFileCopyFlags        flags,
                                                       GCancellable         *cancellable,
                                                       GFileProgressCallback progress_callback,
                                                       gpointer              progress_callback_data,
                                                       GError              **error);
  void                (* _move_async)                 (void);
  void                (* _move_finish)                (void);

  void                (* mount_mountable)             (GFile                *file,
                                                       GMountMountFlags      flags,
                                                       GMountOperation      *mount_operation,
                                                       GCancellable         *cancellable,
                                                       GAsyncReadyCallback   callback,
                                                       gpointer              user_data);
  GFile *             (* mount_mountable_finish)      (GFile                *file,
                                                       GAsyncResult         *result,
                                                       GError              **error);

  void                (* unmount_mountable)           (GFile                *file,
                                                       GMountUnmountFlags    flags,
                                                       GCancellable         *cancellable,
                                                       GAsyncReadyCallback   callback,
                                                       gpointer              user_data);
  gboolean            (* unmount_mountable_finish)    (GFile                *file,
                                                       GAsyncResult         *result,
                                                       GError              **error);

  void                (* eject_mountable)             (GFile                *file,
                                                       GMountUnmountFlags    flags,
                                                       GCancellable         *cancellable,
                                                       GAsyncReadyCallback   callback,
                                                       gpointer              user_data);
  gboolean            (* eject_mountable_finish)      (GFile                *file,
                                                       GAsyncResult         *result,
                                                       GError              **error);

  void                (* mount_enclosing_volume)      (GFile                *location,
                                                       GMountMountFlags      flags,
                                                       GMountOperation      *mount_operation,
                                                       GCancellable         *cancellable,
                                                       GAsyncReadyCallback   callback,
                                                       gpointer              user_data);
  gboolean         (* mount_enclosing_volume_finish)  (GFile                *location,
                                                       GAsyncResult         *result,
                                                       GError              **error);

  GFileMonitor *      (* monitor_dir)                 (GFile                *file,
                                                       GFileMonitorFlags     flags,
                                                       GCancellable         *cancellable,
                                                       GError              **error);
  GFileMonitor *      (* monitor_file)                (GFile                *file,
                                                       GFileMonitorFlags     flags,
                                                       GCancellable         *cancellable,
                                                       GError              **error);

  GFileIOStream *     (* open_readwrite)              (GFile                *file,
                                                       GCancellable         *cancellable,
                                                       GError              **error);
  void                (* open_readwrite_async)        (GFile                *file,
                                                       int                   io_priority,
                                                       GCancellable         *cancellable,
                                                       GAsyncReadyCallback   callback,
                                                       gpointer              user_data);
  GFileIOStream *     (* open_readwrite_finish)       (GFile                *file,
                                                       GAsyncResult         *res,
                                                       GError              **error);
  GFileIOStream *     (* create_readwrite)            (GFile                *file,
						       GFileCreateFlags      flags,
                                                       GCancellable         *cancellable,
                                                       GError              **error);
  void                (* create_readwrite_async)      (GFile                *file,
						       GFileCreateFlags      flags,
                                                       int                   io_priority,
                                                       GCancellable         *cancellable,
                                                       GAsyncReadyCallback   callback,
                                                       gpointer              user_data);
  GFileIOStream *     (* create_readwrite_finish)      (GFile                *file,
                                                       GAsyncResult         *res,
                                                       GError              **error);
  GFileIOStream *     (* replace_readwrite)           (GFile                *file,
                                                       const char           *etag,
                                                       gboolean              make_backup,
                                                       GFileCreateFlags      flags,
                                                       GCancellable         *cancellable,
                                                       GError              **error);
  void                (* replace_readwrite_async)     (GFile                *file,
                                                       const char           *etag,
                                                       gboolean              make_backup,
                                                       GFileCreateFlags      flags,
                                                       int                   io_priority,
                                                       GCancellable         *cancellable,
                                                       GAsyncReadyCallback   callback,
                                                       gpointer              user_data);
  GFileIOStream *     (* replace_readwrite_finish)    (GFile                *file,
                                                       GAsyncResult         *res,
                                                       GError              **error);

  void                (* start_mountable)             (GFile                *file,
                                                       GDriveStartFlags      flags,
                                                       GMountOperation      *start_operation,
                                                       GCancellable         *cancellable,
                                                       GAsyncReadyCallback   callback,
                                                       gpointer              user_data);
  gboolean            (* start_mountable_finish)      (GFile                *file,
                                                       GAsyncResult         *result,
                                                       GError              **error);

  void                (* stop_mountable)              (GFile                *file,
                                                       GMountUnmountFlags    flags,
                                                       GMountOperation      *mount_operation,
                                                       GCancellable         *cancellable,
                                                       GAsyncReadyCallback   callback,
                                                       gpointer              user_data);
  gboolean            (* stop_mountable_finish)       (GFile                *file,
                                                       GAsyncResult         *result,
                                                       GError              **error);

  gboolean            supports_thread_contexts;

  void                (* unmount_mountable_with_operation) (GFile           *file,
                                                       GMountUnmountFlags    flags,
                                                       GMountOperation      *mount_operation,
                                                       GCancellable         *cancellable,
                                                       GAsyncReadyCallback   callback,
                                                       gpointer              user_data);
  gboolean            (* unmount_mountable_with_operation_finish) (GFile    *file,
                                                       GAsyncResult         *result,
                                                       GError              **error);

  void                (* eject_mountable_with_operation) (GFile             *file,
                                                       GMountUnmountFlags    flags,
                                                       GMountOperation      *mount_operation,
                                                       GCancellable         *cancellable,
                                                       GAsyncReadyCallback   callback,
                                                       gpointer              user_data);
  gboolean            (* eject_mountable_with_operation_finish) (GFile      *file,
                                                       GAsyncResult         *result,
                                                       GError              **error);

  void                (* poll_mountable)              (GFile                *file,
                                                       GCancellable         *cancellable,
                                                       GAsyncReadyCallback   callback,
                                                       gpointer              user_data);
  gboolean            (* poll_mountable_finish)       (GFile                *file,
                                                       GAsyncResult         *result,
                                                       GError              **error);
};
</pre>
<p>
An interface for writing VFS file handles.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><a href="./../gobject/gobject/gobject-Type-Information.html#GTypeInterface"><span class="type">GTypeInterface</span></a> <em class="structfield"><code><a name="GFileIface.g-iface"></a>g_iface</code></em>;</span></p></td>
<td>The parent interface.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.dup"></a>dup</code></em> ()</span></p></td>
<td>Duplicates a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.hash"></a>hash</code></em> ()</span></p></td>
<td>Creates a hash of a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.equal"></a>equal</code></em> ()</span></p></td>
<td>Checks equality of two given <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>s.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.is-native"></a>is_native</code></em> ()</span></p></td>
<td>Checks to see if a file is native to the system.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.has-uri-scheme"></a>has_uri_scheme</code></em> ()</span></p></td>
<td>Checks to see if a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> has a given URI scheme.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.get-uri-scheme"></a>get_uri_scheme</code></em> ()</span></p></td>
<td>Gets the URI scheme for a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.get-basename"></a>get_basename</code></em> ()</span></p></td>
<td>Gets the basename for a given <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.get-path"></a>get_path</code></em> ()</span></p></td>
<td>Gets the current path within a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.get-uri"></a>get_uri</code></em> ()</span></p></td>
<td>Gets a URI for the path within a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.get-parse-name"></a>get_parse_name</code></em> ()</span></p></td>
<td>Gets the parsed name for the <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.get-parent"></a>get_parent</code></em> ()</span></p></td>
<td>Gets the parent directory for the <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.prefix-matches"></a>prefix_matches</code></em> ()</span></p></td>
<td>Checks whether a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> contains a specified file.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.get-relative-path"></a>get_relative_path</code></em> ()</span></p></td>
<td>Gets the path for a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> relative to a given path.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.resolve-relative-path"></a>resolve_relative_path</code></em> ()</span></p></td>
<td>Resolves a relative path for a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> to an absolute path.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.get-child-for-display-name"></a>get_child_for_display_name</code></em> ()</span></p></td>
<td>Gets the child <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> for a given display name.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.enumerate-children"></a>enumerate_children</code></em> ()</span></p></td>
<td>Gets a <a class="link" href="GFileEnumerator.html" title="GFileEnumerator"><span class="type">GFileEnumerator</span></a> with the children of a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.enumerate-children-async"></a>enumerate_children_async</code></em> ()</span></p></td>
<td>Asynchronously gets a <a class="link" href="GFileEnumerator.html" title="GFileEnumerator"><span class="type">GFileEnumerator</span></a> with the children of a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.enumerate-children-finish"></a>enumerate_children_finish</code></em> ()</span></p></td>
<td>Finishes asynchronously enumerating the children.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.query-info"></a>query_info</code></em> ()</span></p></td>
<td>Gets the <a class="link" href="GFileInfo.html" title="GFileInfo"><span class="type">GFileInfo</span></a> for a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.query-info-async"></a>query_info_async</code></em> ()</span></p></td>
<td>Asynchronously gets the <a class="link" href="GFileInfo.html" title="GFileInfo"><span class="type">GFileInfo</span></a> for a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.query-info-finish"></a>query_info_finish</code></em> ()</span></p></td>
<td>Finishes an asynchronous query info operation.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.query-filesystem-info"></a>query_filesystem_info</code></em> ()</span></p></td>
<td>Gets a <a class="link" href="GFileInfo.html" title="GFileInfo"><span class="type">GFileInfo</span></a> for the file system <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> is on.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.query-filesystem-info-async"></a>query_filesystem_info_async</code></em> ()</span></p></td>
<td>Asynchronously gets a <a class="link" href="GFileInfo.html" title="GFileInfo"><span class="type">GFileInfo</span></a> for the file system <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> is on.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.query-filesystem-info-finish"></a>query_filesystem_info_finish</code></em> ()</span></p></td>
<td>Finishes asynchronously getting the file system info.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.find-enclosing-mount"></a>find_enclosing_mount</code></em> ()</span></p></td>
<td>Gets a <a class="link" href="GMount.html" title="GMount"><span class="type">GMount</span></a> for the <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.find-enclosing-mount-async"></a>find_enclosing_mount_async</code></em> ()</span></p></td>
<td>Asynchronously gets the <a class="link" href="GMount.html" title="GMount"><span class="type">GMount</span></a> for a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.find-enclosing-mount-finish"></a>find_enclosing_mount_finish</code></em> ()</span></p></td>
<td>Finishes asynchronously getting the volume.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.set-display-name"></a>set_display_name</code></em> ()</span></p></td>
<td>Sets the display name for a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.set-display-name-async"></a>set_display_name_async</code></em> ()</span></p></td>
<td>Asynchronously sets a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>'s display name.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.set-display-name-finish"></a>set_display_name_finish</code></em> ()</span></p></td>
<td>Finishes asynchronously setting a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>'s display name.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.query-settable-attributes"></a>query_settable_attributes</code></em> ()</span></p></td>
<td>Returns a list of <span class="type">GFileAttribute</span>s that can be set.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.-query-settable-attributes-async"></a>_query_settable_attributes_async</code></em> ()</span></p></td>
<td>Asynchronously gets a list of <span class="type">GFileAttribute</span>s that can be set.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.-query-settable-attributes-finish"></a>_query_settable_attributes_finish</code></em> ()</span></p></td>
<td>Finishes asynchronously querying settable attributes.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.query-writable-namespaces"></a>query_writable_namespaces</code></em> ()</span></p></td>
<td>Returns a list of <span class="type">GFileAttribute</span> namespaces that are writable.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.-query-writable-namespaces-async"></a>_query_writable_namespaces_async</code></em> ()</span></p></td>
<td>Asynchronously gets a list of <span class="type">GFileAttribute</span> namespaces that are writable.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.-query-writable-namespaces-finish"></a>_query_writable_namespaces_finish</code></em> ()</span></p></td>
<td>Finishes asynchronously querying the writable namespaces.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.set-attribute"></a>set_attribute</code></em> ()</span></p></td>
<td>Sets a <span class="type">GFileAttribute</span>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.set-attributes-from-info"></a>set_attributes_from_info</code></em> ()</span></p></td>
<td>Sets a <span class="type">GFileAttribute</span> with information from a <a class="link" href="GFileInfo.html" title="GFileInfo"><span class="type">GFileInfo</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.set-attributes-async"></a>set_attributes_async</code></em> ()</span></p></td>
<td>Asynchronously sets a file's attributes.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.set-attributes-finish"></a>set_attributes_finish</code></em> ()</span></p></td>
<td>Finishes setting a file's attributes asynchronously.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.read-fn"></a>read_fn</code></em> ()</span></p></td>
<td>Reads a file asynchronously.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.read-async"></a>read_async</code></em> ()</span></p></td>
<td>Asynchronously reads a file.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.read-finish"></a>read_finish</code></em> ()</span></p></td>
<td>Finishes asynchronously reading a file.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.append-to"></a>append_to</code></em> ()</span></p></td>
<td>Writes to the end of a file.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.append-to-async"></a>append_to_async</code></em> ()</span></p></td>
<td>Asynchronously writes to the end of a file.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.append-to-finish"></a>append_to_finish</code></em> ()</span></p></td>
<td>Finishes an asynchronous file append operation.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.create"></a>create</code></em> ()</span></p></td>
<td>Creates a new file.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.create-async"></a>create_async</code></em> ()</span></p></td>
<td>Asynchronously creates a file.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.create-finish"></a>create_finish</code></em> ()</span></p></td>
<td>Finishes asynchronously creating a file.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.replace"></a>replace</code></em> ()</span></p></td>
<td>Replaces the contents of a file.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.replace-async"></a>replace_async</code></em> ()</span></p></td>
<td>Asynchronously replaces the contents of a file.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.replace-finish"></a>replace_finish</code></em> ()</span></p></td>
<td>Finishes asynchronously replacing a file.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.delete-file"></a>delete_file</code></em> ()</span></p></td>
<td>Deletes a file.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.-delete-file-async"></a>_delete_file_async</code></em> ()</span></p></td>
<td>Asynchronously deletes a file.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.-delete-file-finish"></a>_delete_file_finish</code></em> ()</span></p></td>
<td>Finishes an asynchronous delete.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.trash"></a>trash</code></em> ()</span></p></td>
<td>Sends a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> to the Trash location.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.-trash-async"></a>_trash_async</code></em> ()</span></p></td>
<td>Asynchronously sends a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> to the Trash location.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.-trash-finish"></a>_trash_finish</code></em> ()</span></p></td>
<td>Finishes an asynchronous file trashing operation.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.make-directory"></a>make_directory</code></em> ()</span></p></td>
<td>Makes a directory.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.-make-directory-async"></a>_make_directory_async</code></em> ()</span></p></td>
<td>Asynchronously makes a directory.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.-make-directory-finish"></a>_make_directory_finish</code></em> ()</span></p></td>
<td>Finishes making a directory asynchronously.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.make-symbolic-link"></a>make_symbolic_link</code></em> ()</span></p></td>
<td>Makes a symbolic link.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.-make-symbolic-link-async"></a>_make_symbolic_link_async</code></em> ()</span></p></td>
<td>Asynchronously makes a symbolic link</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.-make-symbolic-link-finish"></a>_make_symbolic_link_finish</code></em> ()</span></p></td>
<td>Finishes making a symbolic link asynchronously.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.copy"></a>copy</code></em> ()</span></p></td>
<td>Copies a file.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.copy-async"></a>copy_async</code></em> ()</span></p></td>
<td>Asynchronously copies a file.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.copy-finish"></a>copy_finish</code></em> ()</span></p></td>
<td>Finishes an asynchronous copy operation.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.move"></a>move</code></em> ()</span></p></td>
<td>Moves a file.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.-move-async"></a>_move_async</code></em> ()</span></p></td>
<td>Asynchronously moves a file.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.-move-finish"></a>_move_finish</code></em> ()</span></p></td>
<td>Finishes an asynchronous move operation.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.mount-mountable"></a>mount_mountable</code></em> ()</span></p></td>
<td>Mounts a mountable object.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.mount-mountable-finish"></a>mount_mountable_finish</code></em> ()</span></p></td>
<td>Finishes a mounting operation.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.unmount-mountable"></a>unmount_mountable</code></em> ()</span></p></td>
<td>Unmounts a mountable object.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.unmount-mountable-finish"></a>unmount_mountable_finish</code></em> ()</span></p></td>
<td>Finishes an unmount operation.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.eject-mountable"></a>eject_mountable</code></em> ()</span></p></td>
<td>Ejects a mountable.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.eject-mountable-finish"></a>eject_mountable_finish</code></em> ()</span></p></td>
<td>Finishes an eject operation.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.mount-enclosing-volume"></a>mount_enclosing_volume</code></em> ()</span></p></td>
<td>Mounts a specified location.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.mount-enclosing-volume-finish"></a>mount_enclosing_volume_finish</code></em> ()</span></p></td>
<td>Finishes mounting a specified location.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.monitor-dir"></a>monitor_dir</code></em> ()</span></p></td>
<td>Creates a <a class="link" href="GFileMonitor.html" title="GFileMonitor"><span class="type">GFileMonitor</span></a> for the location.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.monitor-file"></a>monitor_file</code></em> ()</span></p></td>
<td>Creates a <a class="link" href="GFileMonitor.html" title="GFileMonitor"><span class="type">GFileMonitor</span></a> for the location.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.open-readwrite"></a>open_readwrite</code></em> ()</span></p></td>
<td>Open file read/write. Since 2.22.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.open-readwrite-async"></a>open_readwrite_async</code></em> ()</span></p></td>
<td>Asynchronously opens file read/write. Since 2.22.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.open-readwrite-finish"></a>open_readwrite_finish</code></em> ()</span></p></td>
<td>Finishes an asynchronous open read/write. Since 2.22.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.create-readwrite"></a>create_readwrite</code></em> ()</span></p></td>
<td>Creates file read/write. Since 2.22.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.create-readwrite-async"></a>create_readwrite_async</code></em> ()</span></p></td>
<td>Asynchronously creates file read/write. Since 2.22.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.create-readwrite-finish"></a>create_readwrite_finish</code></em> ()</span></p></td>
<td>Finishes an asynchronous creates read/write. Since 2.22.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.replace-readwrite"></a>replace_readwrite</code></em> ()</span></p></td>
<td>Replaces file read/write. Since 2.22.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.replace-readwrite-async"></a>replace_readwrite_async</code></em> ()</span></p></td>
<td>Asynchronously replaces file read/write. Since 2.22.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.replace-readwrite-finish"></a>replace_readwrite_finish</code></em> ()</span></p></td>
<td>Finishes an asynchronous replace read/write. Since 2.22.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.start-mountable"></a>start_mountable</code></em> ()</span></p></td>
<td>Starts a mountable object. Since 2.22.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.start-mountable-finish"></a>start_mountable_finish</code></em> ()</span></p></td>
<td>Finishes an start operation. Since 2.22.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.stop-mountable"></a>stop_mountable</code></em> ()</span></p></td>
<td>Stops a mountable. Since 2.22.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.stop-mountable-finish"></a>stop_mountable_finish</code></em> ()</span></p></td>
<td>Finishes an stop operation. Since 2.22.</td>
</tr>
<tr>
<td><p><span class="term"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> <em class="structfield"><code><a name="GFileIface.supports-thread-contexts"></a>supports_thread_contexts</code></em>;</span></p></td>
<td>a boolean that indicates whether the <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> implementation supports thread-default contexts. Since 2.22.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.unmount-mountable-with-operation"></a>unmount_mountable_with_operation</code></em> ()</span></p></td>
<td>Unmounts a mountable object using a <a class="link" href="GMountOperation.html" title="GMountOperation"><span class="type">GMountOperation</span></a>. Since 2.22.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.unmount-mountable-with-operation-finish"></a>unmount_mountable_with_operation_finish</code></em> ()</span></p></td>
<td>Finishes an unmount operation using a <a class="link" href="GMountOperation.html" title="GMountOperation"><span class="type">GMountOperation</span></a>. Since 2.22.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.eject-mountable-with-operation"></a>eject_mountable_with_operation</code></em> ()</span></p></td>
<td>Ejects a mountable object using a <a class="link" href="GMountOperation.html" title="GMountOperation"><span class="type">GMountOperation</span></a>. Since 2.22.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.eject-mountable-with-operation-finish"></a>eject_mountable_with_operation_finish</code></em> ()</span></p></td>
<td>Finishes an eject operation using a <a class="link" href="GMountOperation.html" title="GMountOperation"><span class="type">GMountOperation</span></a>. Since 2.22.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.poll-mountable"></a>poll_mountable</code></em> ()</span></p></td>
<td>Polls a mountable object for media changes. Since 2.22.</td>
</tr>
<tr>
<td><p><span class="term"><em class="structfield"><code><a name="GFileIface.poll-mountable-finish"></a>poll_mountable_finish</code></em> ()</span></p></td>
<td>Finishes an poll operation for media changes. Since 2.22.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="GFileQueryInfoFlags"></a><h3>enum GFileQueryInfoFlags</h3>
<pre class="programlisting">typedef enum {
  G_FILE_QUERY_INFO_NONE              = 0,
  G_FILE_QUERY_INFO_NOFOLLOW_SYMLINKS = (1 &lt;&lt; 0)   /*&lt; nick=nofollow-symlinks &gt;*/
} GFileQueryInfoFlags;
</pre>
<p>
Flags used when querying a <a class="link" href="GFileInfo.html" title="GFileInfo"><span class="type">GFileInfo</span></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><a name="G-FILE-QUERY-INFO-NONE:CAPS"></a><span class="term"><code class="literal">G_FILE_QUERY_INFO_NONE</code></span></p></td>
<td>No flags set.
</td>
</tr>
<tr>
<td><p><a name="G-FILE-QUERY-INFO-NOFOLLOW-SYMLINKS:CAPS"></a><span class="term"><code class="literal">G_FILE_QUERY_INFO_NOFOLLOW_SYMLINKS</code></span></p></td>
<td>Don't follow symlinks.
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="GFileCreateFlags"></a><h3>enum GFileCreateFlags</h3>
<pre class="programlisting">typedef enum {
  G_FILE_CREATE_NONE    = 0,
  G_FILE_CREATE_PRIVATE = (1 &lt;&lt; 0),
  G_FILE_CREATE_REPLACE_DESTINATION = (1 &lt;&lt; 1)
} GFileCreateFlags;
</pre>
<p>
Flags used when an operation may create a file.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><a name="G-FILE-CREATE-NONE:CAPS"></a><span class="term"><code class="literal">G_FILE_CREATE_NONE</code></span></p></td>
<td>No flags set.
</td>
</tr>
<tr>
<td><p><a name="G-FILE-CREATE-PRIVATE:CAPS"></a><span class="term"><code class="literal">G_FILE_CREATE_PRIVATE</code></span></p></td>
<td>Create a file that can only be
   accessed by the current user.
</td>
</tr>
<tr>
<td><p><a name="G-FILE-CREATE-REPLACE-DESTINATION:CAPS"></a><span class="term"><code class="literal">G_FILE_CREATE_REPLACE_DESTINATION</code></span></p></td>
<td>Replace the destination
   as if it didn't exist before. Don't try to keep any old
   permissions, replace instead of following links. This
   is generally useful if you're doing a "copy over"
   rather than a "save new version of" replace operation.
   You can think of it as "unlink destination" before
   writing to it, although the implementation may not
   be exactly like that. Since 2.20
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="GFileCopyFlags"></a><h3>enum GFileCopyFlags</h3>
<pre class="programlisting">typedef enum {
  G_FILE_COPY_NONE                 = 0,          /*&lt; nick=none &gt;*/
  G_FILE_COPY_OVERWRITE            = (1 &lt;&lt; 0),
  G_FILE_COPY_BACKUP               = (1 &lt;&lt; 1),
  G_FILE_COPY_NOFOLLOW_SYMLINKS    = (1 &lt;&lt; 2),
  G_FILE_COPY_ALL_METADATA         = (1 &lt;&lt; 3),
  G_FILE_COPY_NO_FALLBACK_FOR_MOVE = (1 &lt;&lt; 4),
  G_FILE_COPY_TARGET_DEFAULT_PERMS = (1 &lt;&lt; 5)
} GFileCopyFlags;
</pre>
<p>
Flags used when copying or moving files.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><a name="G-FILE-COPY-NONE:CAPS"></a><span class="term"><code class="literal">G_FILE_COPY_NONE</code></span></p></td>
<td>No flags set.
</td>
</tr>
<tr>
<td><p><a name="G-FILE-COPY-OVERWRITE:CAPS"></a><span class="term"><code class="literal">G_FILE_COPY_OVERWRITE</code></span></p></td>
<td>Overwrite any existing files
</td>
</tr>
<tr>
<td><p><a name="G-FILE-COPY-BACKUP:CAPS"></a><span class="term"><code class="literal">G_FILE_COPY_BACKUP</code></span></p></td>
<td>Make a backup of any existing files.
</td>
</tr>
<tr>
<td><p><a name="G-FILE-COPY-NOFOLLOW-SYMLINKS:CAPS"></a><span class="term"><code class="literal">G_FILE_COPY_NOFOLLOW_SYMLINKS</code></span></p></td>
<td>Don't follow symlinks.
</td>
</tr>
<tr>
<td><p><a name="G-FILE-COPY-ALL-METADATA:CAPS"></a><span class="term"><code class="literal">G_FILE_COPY_ALL_METADATA</code></span></p></td>
<td>Copy all file metadata instead of just default set used for copy (see <a class="link" href="GFileInfo.html" title="GFileInfo"><span class="type">GFileInfo</span></a>).
</td>
</tr>
<tr>
<td><p><a name="G-FILE-COPY-NO-FALLBACK-FOR-MOVE:CAPS"></a><span class="term"><code class="literal">G_FILE_COPY_NO_FALLBACK_FOR_MOVE</code></span></p></td>
<td>Don't use copy and delete fallback if native move not supported.
</td>
</tr>
<tr>
<td><p><a name="G-FILE-COPY-TARGET-DEFAULT-PERMS:CAPS"></a><span class="term"><code class="literal">G_FILE_COPY_TARGET_DEFAULT_PERMS</code></span></p></td>
<td>Leaves target file with default perms, instead of setting the source file perms.
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="GFileMonitorFlags"></a><h3>enum GFileMonitorFlags</h3>
<pre class="programlisting">typedef enum {
  G_FILE_MONITOR_NONE         = 0,
  G_FILE_MONITOR_WATCH_MOUNTS = (1 &lt;&lt; 0),
  G_FILE_MONITOR_SEND_MOVED   = (1 &lt;&lt; 1)
} GFileMonitorFlags;
</pre>
<p>
Flags used to set what a <a class="link" href="GFileMonitor.html" title="GFileMonitor"><span class="type">GFileMonitor</span></a> will watch for.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><a name="G-FILE-MONITOR-NONE:CAPS"></a><span class="term"><code class="literal">G_FILE_MONITOR_NONE</code></span></p></td>
<td>No flags set.
</td>
</tr>
<tr>
<td><p><a name="G-FILE-MONITOR-WATCH-MOUNTS:CAPS"></a><span class="term"><code class="literal">G_FILE_MONITOR_WATCH_MOUNTS</code></span></p></td>
<td>Watch for mount events.
</td>
</tr>
<tr>
<td><p><a name="G-FILE-MONITOR-SEND-MOVED:CAPS"></a><span class="term"><code class="literal">G_FILE_MONITOR_SEND_MOVED</code></span></p></td>
<td>Pair DELETED and CREATED events caused
  by file renames (moves) and send a single G_FILE_MONITOR_EVENT_MOVED
  event instead (NB: not supported on all backends; the default
  behaviour -without specifying this flag- is to send single DELETED
  and CREATED events).
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="GFilesystemPreviewType"></a><h3>enum GFilesystemPreviewType</h3>
<pre class="programlisting">typedef enum {
  G_FILESYSTEM_PREVIEW_TYPE_IF_ALWAYS = 0,
  G_FILESYSTEM_PREVIEW_TYPE_IF_LOCAL,
  G_FILESYSTEM_PREVIEW_TYPE_NEVER
} GFilesystemPreviewType;
</pre>
<p>
Indicates a hint from the file system whether files should be
previewed in a file manager. Returned as the value of the key
<a class="link" href="GFileInfo.html#G-FILE-ATTRIBUTE-FILESYSTEM-USE-PREVIEW:CAPS" title="G_FILE_ATTRIBUTE_FILESYSTEM_USE_PREVIEW"><span class="type">G_FILE_ATTRIBUTE_FILESYSTEM_USE_PREVIEW</span></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><a name="G-FILESYSTEM-PREVIEW-TYPE-IF-ALWAYS:CAPS"></a><span class="term"><code class="literal">G_FILESYSTEM_PREVIEW_TYPE_IF_ALWAYS</code></span></p></td>
<td>Only preview files if user has explicitly requested it.
</td>
</tr>
<tr>
<td><p><a name="G-FILESYSTEM-PREVIEW-TYPE-IF-LOCAL:CAPS"></a><span class="term"><code class="literal">G_FILESYSTEM_PREVIEW_TYPE_IF_LOCAL</code></span></p></td>
<td>Preview files if user has requested preview of "local" files.
</td>
</tr>
<tr>
<td><p><a name="G-FILESYSTEM-PREVIEW-TYPE-NEVER:CAPS"></a><span class="term"><code class="literal">G_FILESYSTEM_PREVIEW_TYPE_NEVER</code></span></p></td>
<td>Never preview files.
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="GFileProgressCallback"></a><h3>GFileProgressCallback ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                (*GFileProgressCallback)            (<em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#goffset"><span class="type">goffset</span></a> current_num_bytes</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#goffset"><span class="type">goffset</span></a> total_num_bytes</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>
When doing file operations that may take a while, such as moving
a file or copying a file, a progress callback is used to pass how
far along that operation is to the application.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>current_num_bytes</code></em> :</span></p></td>
<td>the current number of bytes in the operation.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>total_num_bytes</code></em> :</span></p></td>
<td>the total number of bytes in the operation.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>user data passed to the callback.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="GFileReadMoreCallback"></a><h3>GFileReadMoreCallback ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            (*GFileReadMoreCallback)            (<em class="parameter"><code>const <span class="type">char</span> *file_contents</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#goffset"><span class="type">goffset</span></a> file_size</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> callback_data</code></em>);</pre>
<p>
When loading the partial contents of a file with <a class="link" href="GFile.html#g-file-load-partial-contents-async" title="g_file_load_partial_contents_async ()"><code class="function">g_file_load_partial_contents_async()</code></a>,
it may become necessary to determine if any more data from the file should be loaded.
A <a class="link" href="GFile.html#GFileReadMoreCallback" title="GFileReadMoreCallback ()"><span class="type">GFileReadMoreCallback</span></a> function facilitates this by returning <a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if more data
should be read, or <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file_contents</code></em> :</span></p></td>
<td>the data as currently read.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>file_size</code></em> :</span></p></td>
<td>the size of the data currently read.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>callback_data</code></em> :</span></p></td>
<td>data passed to the callback.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if more data should be read back. <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-new-for-path"></a><h3>g_file_new_for_path ()</h3>
<pre class="programlisting"><a class="link" href="GFile.html" title="GFile"><span class="returnvalue">GFile</span></a> *                  g_file_new_for_path            (<em class="parameter"><code>const <span class="type">char</span> *path</code></em>);</pre>
<p>
Constructs a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> for a given path. This operation never
fails, but the returned object might not support any I/O
operation if <em class="parameter"><code>path</code></em> is malformed.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>path</code></em> :</span></p></td>
<td>a string containing a relative or absolute path. The string
must be encoded in the glib filename encoding.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a new <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> for the given <em class="parameter"><code>path</code></em>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-new-for-uri"></a><h3>g_file_new_for_uri ()</h3>
<pre class="programlisting"><a class="link" href="GFile.html" title="GFile"><span class="returnvalue">GFile</span></a> *                  g_file_new_for_uri             (<em class="parameter"><code>const <span class="type">char</span> *uri</code></em>);</pre>
<p>
Constructs a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> for a given URI. This operation never 
fails, but the returned object might not support any I/O 
operation if <em class="parameter"><code>uri</code></em> is malformed or if the uri type is 
not supported.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>uri</code></em> :</span></p></td>
<td>a UTF8 string containing a URI.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> for the given <em class="parameter"><code>uri</code></em>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-new-for-commandline-arg"></a><h3>g_file_new_for_commandline_arg ()</h3>
<pre class="programlisting"><a class="link" href="GFile.html" title="GFile"><span class="returnvalue">GFile</span></a> *                  g_file_new_for_commandline_arg (<em class="parameter"><code>const <span class="type">char</span> *arg</code></em>);</pre>
<p>
Creates a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> with the given argument from the command line. The value of
<em class="parameter"><code>arg</code></em> can be either a URI, an absolute path or a relative path resolved
relative to the current working directory.
This operation never fails, but the returned object might not support any
I/O operation if <em class="parameter"><code>arg</code></em> points to a malformed path.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>arg</code></em> :</span></p></td>
<td>a command line string.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a new <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-parse-name"></a><h3>g_file_parse_name ()</h3>
<pre class="programlisting"><a class="link" href="GFile.html" title="GFile"><span class="returnvalue">GFile</span></a> *                  g_file_parse_name              (<em class="parameter"><code>const <span class="type">char</span> *parse_name</code></em>);</pre>
<p>
Constructs a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> with the given <em class="parameter"><code>parse_name</code></em> (i.e. something given by <a class="link" href="GFile.html#g-file-get-parse-name" title="g_file_get_parse_name ()"><code class="function">g_file_get_parse_name()</code></a>).
This operation never fails, but the returned object might not support any I/O
operation if the <em class="parameter"><code>parse_name</code></em> cannot be parsed.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>parse_name</code></em> :</span></p></td>
<td>a file name or path to be parsed.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a new <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-dup"></a><h3>g_file_dup ()</h3>
<pre class="programlisting"><a class="link" href="GFile.html" title="GFile"><span class="returnvalue">GFile</span></a> *                  g_file_dup                     (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>);</pre>
<p>
Duplicates a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> handle. This operation does not duplicate 
the actual file or directory represented by the <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>; see 
<a class="link" href="GFile.html#g-file-copy" title="g_file_copy ()"><code class="function">g_file_copy()</code></a> if attempting to copy a file. 
</p>
<p>
This call does no blocking i/o.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a new <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> that is a duplicate of the given <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-hash"></a><h3>g_file_hash ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#guint"><span class="returnvalue">guint</span></a>               g_file_hash                         (<em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> file</code></em>);</pre>
<p>
Creates a hash value for a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.
</p>
<p>
This call does no blocking i/o.
</p>
<p>
Virtual: hash
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Basic-Types.html#gconstpointer"><span class="type">gconstpointer</span></a> to a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>0 if <em class="parameter"><code>file</code></em> is not a valid <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>, otherwise an
integer that can be used as hash value for the <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.
This function is intended for easily hashing a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> to
add to a <a href="./../glib/glib/glib-Hash-Tables.html#GHashTable"><span class="type">GHashTable</span></a> or similar data structure.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-equal"></a><h3>g_file_equal ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_equal                        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file1</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file2</code></em>);</pre>
<p>
Checks equality of two given <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>s. Note that two
<a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>s that differ can still refer to the same
file on the filesystem due to various forms of filename
aliasing.
</p>
<p>
This call does no blocking i/o.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file1</code></em> :</span></p></td>
<td>the first <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>file2</code></em> :</span></p></td>
<td>the second <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>file1</code></em> and <em class="parameter"><code>file2</code></em> are equal.
<a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if either is not a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-get-basename"></a><h3>g_file_get_basename ()</h3>
<pre class="programlisting"><span class="returnvalue">char</span> *                   g_file_get_basename            (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>);</pre>
<p>
Gets the base name (the last component of the path) for a given <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.
</p>
<p>
If called for the top level of a system (such as the filesystem root
or a uri like sftp://host/) it will return a single directory separator
(and on Windows, possibly a drive letter).
</p>
<p>
The base name is a byte string (*not* UTF-8). It has no defined encoding
or rules other than it may not contain zero bytes.  If you want to use
filenames in a user interface you should use the display name that you
can get by requesting the <a class="link" href="GFileInfo.html#G-FILE-ATTRIBUTE-STANDARD-DISPLAY-NAME:CAPS" title="G_FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME"><code class="literal">G_FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME</code></a>
attribute with <a class="link" href="GFile.html#g-file-query-info" title="g_file_query_info ()"><code class="function">g_file_query_info()</code></a>.
</p>
<p>
This call does no blocking i/o.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>string containing the <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>'s base name, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
if given <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> is invalid. The returned string should be
freed with <a href="./../glib/glib/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> when no longer needed.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-get-path"></a><h3>g_file_get_path ()</h3>
<pre class="programlisting"><span class="returnvalue">char</span> *                   g_file_get_path                (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>);</pre>
<p>
Gets the local pathname for <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>, if one exists. 
</p>
<p>
This call does no blocking i/o.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>string containing the <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>'s path, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if
no such path exists. The returned string should be
freed with <a href="./../glib/glib/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> when no longer needed.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-get-uri"></a><h3>g_file_get_uri ()</h3>
<pre class="programlisting"><span class="returnvalue">char</span> *                   g_file_get_uri                 (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>);</pre>
<p>
Gets the URI for the <em class="parameter"><code>file</code></em>.
</p>
<p>
This call does no blocking i/o.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a string containing the <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>'s URI.
The returned string should be freed with <a href="./../glib/glib/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> when no longer needed.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-get-parse-name"></a><h3>g_file_get_parse_name ()</h3>
<pre class="programlisting"><span class="returnvalue">char</span> *                   g_file_get_parse_name          (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>);</pre>
<p>
Gets the parse name of the <em class="parameter"><code>file</code></em>.
A parse name is a UTF-8 string that describes the
file such that one can get the <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> back using
<a class="link" href="GFile.html#g-file-parse-name" title="g_file_parse_name ()"><code class="function">g_file_parse_name()</code></a>.
</p>
<p>
This is generally used to show the <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> as a nice
full-pathname kind of string in a user interface,
like in a location entry.
</p>
<p>
For local files with names that can safely be converted
to UTF8 the pathname is used, otherwise the IRI is used
(a form of URI that allows UTF8 characters unescaped).
</p>
<p>
This call does no blocking i/o.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a string containing the <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>'s parse name. The returned
string should be freed with <a href="./../glib/glib/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> when no longer needed.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-get-parent"></a><h3>g_file_get_parent ()</h3>
<pre class="programlisting"><a class="link" href="GFile.html" title="GFile"><span class="returnvalue">GFile</span></a> *                  g_file_get_parent              (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>);</pre>
<p>
Gets the parent directory for the <em class="parameter"><code>file</code></em>. 
If the <em class="parameter"><code>file</code></em> represents the root directory of the 
file system, then <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> will be returned.
</p>
<p>
This call does no blocking i/o.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> structure to the parent of the given
<a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if there is no parent.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-has-parent"></a><h3>g_file_has_parent ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_has_parent                   (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *parent</code></em>);</pre>
<p>
Checks if <em class="parameter"><code>file</code></em> has a parent, and optionally, if it is <em class="parameter"><code>parent</code></em>.
</p>
<p>
If <em class="parameter"><code>parent</code></em> is <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> then this function returns <a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>file</code></em> has any
parent at all.  If <em class="parameter"><code>parent</code></em> is non-<a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> then <a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> is only returned
if <em class="parameter"><code>file</code></em> is a child of <em class="parameter"><code>parent</code></em>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>parent</code></em> :</span></p></td>
<td>the parent to check for, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <em class="parameter"><code>file</code></em> is a child of <em class="parameter"><code>parent</code></em> (or any parent in the
case that <em class="parameter"><code>parent</code></em> is <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>).</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.24</p>
</div>
<hr>
<div class="refsect2">
<a name="g-file-get-child"></a><h3>g_file_get_child ()</h3>
<pre class="programlisting"><a class="link" href="GFile.html" title="GFile"><span class="returnvalue">GFile</span></a> *                  g_file_get_child               (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *name</code></em>);</pre>
<p>
Gets a child of <em class="parameter"><code>file</code></em> with basename equal to <em class="parameter"><code>name</code></em>.
</p>
<p>
Note that the file with that specific name might not exist, but
you can still have a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> that points to it. You can use this
for instance to create that file.
</p>
<p>
This call does no blocking i/o.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
<td>string containing the child's basename.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> to a child specified by <em class="parameter"><code>name</code></em>.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-get-child-for-display-name"></a><h3>g_file_get_child_for_display_name ()</h3>
<pre class="programlisting"><a class="link" href="GFile.html" title="GFile"><span class="returnvalue">GFile</span></a> *                  g_file_get_child_for_display_name
                                                        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *display_name</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Gets the child of <em class="parameter"><code>file</code></em> for a given <em class="parameter"><code>display_name</code></em> (i.e. a UTF8
version of the name). If this function fails, it returns <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> and <em class="parameter"><code>error</code></em> will be 
set. This is very useful when constructing a GFile for a new file
and the user entered the filename in the user interface, for instance
when you select a directory and type a filename in the file selector.
</p>
<p>
This call does no blocking i/o.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>display_name</code></em> :</span></p></td>
<td>string to a possible child.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> to the specified child, or
<a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the display name couldn't be converted.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-has-prefix"></a><h3>g_file_has_prefix ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_has_prefix                   (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *prefix</code></em>);</pre>
<p>
Checks whether <em class="parameter"><code>file</code></em> has the prefix specified by <em class="parameter"><code>prefix</code></em>. In other word, 
if the names of initial elements of <em class="parameter"><code>file</code></em>s pathname match <em class="parameter"><code>prefix</code></em>.
Only full pathname elements are matched, so a path like /foo is not
considered a prefix of /foobar, only of /foo/bar.
</p>
<p>
This call does no i/o, as it works purely on names. As such it can 
sometimes return <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> even if <em class="parameter"><code>file</code></em> is inside a <em class="parameter"><code>prefix</code></em> (from a 
filesystem point of view), because the prefix of <em class="parameter"><code>file</code></em> is an alias 
of <em class="parameter"><code>prefix</code></em>.
</p>
<p>
Virtual: prefix_matches
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>prefix</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the <em class="parameter"><code>files</code></em>'s parent, grandparent, etc is <em class="parameter"><code>prefix</code></em>.
<a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-get-relative-path"></a><h3>g_file_get_relative_path ()</h3>
<pre class="programlisting"><span class="returnvalue">char</span> *                   g_file_get_relative_path       (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *parent</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *descendant</code></em>);</pre>
<p>
Gets the path for <em class="parameter"><code>descendant</code></em> relative to <em class="parameter"><code>parent</code></em>. 
</p>
<p>
This call does no blocking i/o.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>parent</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>descendant</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>string with the relative path from <em class="parameter"><code>descendant</code></em>
to <em class="parameter"><code>parent</code></em>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>descendant</code></em> doesn't have <em class="parameter"><code>parent</code></em> as prefix.
The returned string should be freed with <a href="./../glib/glib/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> when no longer needed.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-resolve-relative-path"></a><h3>g_file_resolve_relative_path ()</h3>
<pre class="programlisting"><a class="link" href="GFile.html" title="GFile"><span class="returnvalue">GFile</span></a> *                  g_file_resolve_relative_path   (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *relative_path</code></em>);</pre>
<p>
Resolves a relative path for <em class="parameter"><code>file</code></em> to an absolute path.
</p>
<p>
This call does no blocking i/o.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>relative_path</code></em> :</span></p></td>
<td>a given relative path string.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> to the resolved path. <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <em class="parameter"><code>relative_path</code></em>
is <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> or if <em class="parameter"><code>file</code></em> is invalid.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-is-native"></a><h3>g_file_is_native ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_is_native                    (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>);</pre>
<p>
Checks to see if a file is native to the platform.
</p>
<p>
A native file s one expressed in the platform-native filename format,
e.g. "C:\Windows" or "/usr/bin/". This does not mean the file is local,
as it might be on a locally mounted remote filesystem.
</p>
<p>
On some systems non-native files may be available using
the native filesystem via a userspace filesystem (FUSE), in
these cases this call will return <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>, but <a class="link" href="GFile.html#g-file-get-path" title="g_file_get_path ()"><code class="function">g_file_get_path()</code></a>
will still return a native path.
</p>
<p>
This call does no blocking i/o.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if file is native.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-has-uri-scheme"></a><h3>g_file_has_uri_scheme ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_has_uri_scheme               (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *uri_scheme</code></em>);</pre>
<p>
Checks to see if a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> has a given URI scheme.
</p>
<p>
This call does no blocking i/o.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>uri_scheme</code></em> :</span></p></td>
<td>a string containing a URI scheme.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>'s backend supports the
given URI scheme, <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if URI scheme is <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>,
not supported, or <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> is invalid.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-get-uri-scheme"></a><h3>g_file_get_uri_scheme ()</h3>
<pre class="programlisting"><span class="returnvalue">char</span> *                   g_file_get_uri_scheme          (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>);</pre>
<p>
Gets the URI scheme for a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.
RFC 3986 decodes the scheme as:
</p>
<pre class="programlisting">
URI = scheme ":" hier-part [ "?" query ] [ "#" fragment ] 
</pre>
<p>
Common schemes include "file", "http", "ftp", etc. 
</p>
<p>
This call does no blocking i/o.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a string containing the URI scheme for the given
<a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>. The returned string should be freed with <a href="./../glib/glib/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a>
when no longer needed.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-read"></a><h3>g_file_read ()</h3>
<pre class="programlisting"><a class="link" href="GFileInputStream.html" title="GFileInputStream"><span class="returnvalue">GFileInputStream</span></a> *       g_file_read                    (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Opens a file for reading. The result is a <a class="link" href="GFileInputStream.html" title="GFileInputStream"><span class="type">GFileInputStream</span></a> that
can be used to read the contents of the file.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned. 
</p>
<p>
If the file does not exist, the G_IO_ERROR_NOT_FOUND error will be returned.
If the file is a directory, the G_IO_ERROR_IS_DIRECTORY error will be returned.
Other errors are possible too, and depend on what kind of filesystem the file is on.
</p>
<p>
Virtual: read_fn
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>
<a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> to read.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>a <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a class="link" href="GFileInputStream.html" title="GFileInputStream"><span class="type">GFileInputStream</span></a> or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-read-async"></a><h3>g_file_read_async ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                g_file_read_async                   (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><span class="type">int</span> io_priority</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>
Asynchronously opens <em class="parameter"><code>file</code></em> for reading.
</p>
<p>
For more details, see <a class="link" href="GFile.html#g-file-read" title="g_file_read ()"><code class="function">g_file_read()</code></a> which is
the synchronous version of this call.
</p>
<p>
When the operation is finished, <em class="parameter"><code>callback</code></em> will be called. You can then call
<a class="link" href="GFile.html#g-file-read-finish" title="g_file_read_finish ()"><code class="function">g_file_read_finish()</code></a> to get the result of the operation.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>io_priority</code></em> :</span></p></td>
<td>the <a class="link" href="gio-GIOScheduler.html#io-priority">I/O priority</a>
of the request.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> to call when the request is satisfied. <span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>the data to pass to callback function. <span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-read-finish"></a><h3>g_file_read_finish ()</h3>
<pre class="programlisting"><a class="link" href="GFileInputStream.html" title="GFileInputStream"><span class="returnvalue">GFileInputStream</span></a> *       g_file_read_finish             (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Finishes an asynchronous file read operation started with 
<a class="link" href="GFile.html#g-file-read-async" title="g_file_read_async ()"><code class="function">g_file_read_async()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>res</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a <a class="link" href="GFileInputStream.html" title="GFileInputStream"><span class="type">GFileInputStream</span></a> or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-append-to"></a><h3>g_file_append_to ()</h3>
<pre class="programlisting"><a class="link" href="GFileOutputStream.html" title="GFileOutputStream"><span class="returnvalue">GFileOutputStream</span></a> *      g_file_append_to               (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Gets an output stream for appending data to the file. If
the file doesn't already exist it is created.
</p>
<p>
By default files created are generally readable by everyone,
but if you pass <a class="link" href="GFile.html#G-FILE-CREATE-PRIVATE:CAPS"><span class="type">G_FILE_CREATE_PRIVATE</span></a> in <em class="parameter"><code>flags</code></em> the file
will be made readable only to the current user, to the level that
is supported on the target filesystem.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned. 
</p>
<p>
Some file systems don't allow all file names, and may
return an <a class="link" href="gio-GIOError.html#G-IO-ERROR-INVALID-FILENAME:CAPS"><code class="literal">G_IO_ERROR_INVALID_FILENAME</code></a> error.
If the file is a directory the <a class="link" href="gio-GIOError.html#G-IO-ERROR-IS-DIRECTORY:CAPS"><code class="literal">G_IO_ERROR_IS_DIRECTORY</code></a> error will be
returned. Other errors are possible too, and depend on what kind of
filesystem the file is on.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>a set of <a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a <a class="link" href="GFileOutputStream.html" title="GFileOutputStream"><span class="type">GFileOutputStream</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-create"></a><h3>g_file_create ()</h3>
<pre class="programlisting"><a class="link" href="GFileOutputStream.html" title="GFileOutputStream"><span class="returnvalue">GFileOutputStream</span></a> *      g_file_create                  (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Creates a new file and returns an output stream for writing to it.
The file must not already exist.
</p>
<p>
By default files created are generally readable by everyone,
but if you pass <a class="link" href="GFile.html#G-FILE-CREATE-PRIVATE:CAPS"><span class="type">G_FILE_CREATE_PRIVATE</span></a> in <em class="parameter"><code>flags</code></em> the file
will be made readable only to the current user, to the level that
is supported on the target filesystem.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned. 
</p>
<p>
If a file or directory with this name already exists the G_IO_ERROR_EXISTS
error will be returned.
Some file systems don't allow all file names, and may
return an G_IO_ERROR_INVALID_FILENAME error, and if the name
is to long G_IO_ERROR_FILENAME_TOO_LONG will be returned.
Other errors are possible too, and depend on what kind of
filesystem the file is on.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>a set of <a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a <a class="link" href="GFileOutputStream.html" title="GFileOutputStream"><span class="type">GFileOutputStream</span></a> for the newly created file, or
<a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-replace"></a><h3>g_file_replace ()</h3>
<pre class="programlisting"><a class="link" href="GFileOutputStream.html" title="GFileOutputStream"><span class="returnvalue">GFileOutputStream</span></a> *      g_file_replace                 (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *etag</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> make_backup</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Returns an output stream for overwriting the file, possibly
creating a backup copy of the file first. If the file doesn't exist,
it will be created.
</p>
<p>
This will try to replace the file in the safest way possible so
that any errors during the writing will not affect an already
existing copy of the file. For instance, for local files it
may write to a temporary file and then atomically rename over
the destination when the stream is closed.
</p>
<p>
By default files created are generally readable by everyone,
but if you pass <a class="link" href="GFile.html#G-FILE-CREATE-PRIVATE:CAPS"><span class="type">G_FILE_CREATE_PRIVATE</span></a> in <em class="parameter"><code>flags</code></em> the file
will be made readable only to the current user, to the level that
is supported on the target filesystem.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned. 
</p>
<p>
If you pass in a non-<a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a> <em class="parameter"><code>etag</code></em> value, then this value is
compared to the current entity tag of the file, and if they differ
an G_IO_ERROR_WRONG_ETAG error is returned. This generally means
that the file has been changed since you last read it. You can get
the new etag from <a class="link" href="GFileOutputStream.html#g-file-output-stream-get-etag" title="g_file_output_stream_get_etag ()"><code class="function">g_file_output_stream_get_etag()</code></a> after you've
finished writing and closed the <a class="link" href="GFileOutputStream.html" title="GFileOutputStream"><span class="type">GFileOutputStream</span></a>. When you load
a new file you can use <a class="link" href="GFileInputStream.html#g-file-input-stream-query-info" title="g_file_input_stream_query_info ()"><code class="function">g_file_input_stream_query_info()</code></a> to get
the etag of the file.
</p>
<p>
If <em class="parameter"><code>make_backup</code></em> is <a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, this function will attempt to make a backup
of the current file before overwriting it. If this fails a G_IO_ERROR_CANT_CREATE_BACKUP
error will be returned. If you want to replace anyway, try again with
<em class="parameter"><code>make_backup</code></em> set to <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.
</p>
<p>
If the file is a directory the G_IO_ERROR_IS_DIRECTORY error will be returned,
and if the file is some other form of non-regular file then a
G_IO_ERROR_NOT_REGULAR_FILE error will be returned.
Some file systems don't allow all file names, and may
return an G_IO_ERROR_INVALID_FILENAME error, and if the name
is to long G_IO_ERROR_FILENAME_TOO_LONG will be returned.
Other errors are possible too, and depend on what kind of
filesystem the file is on.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>etag</code></em> :</span></p></td>
<td>an optional <a class="link" href="GFile.html#gfile-etag">entity tag</a> for the
current <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>make_backup</code></em> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a backup should be created.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>a set of <a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a <a class="link" href="GFileOutputStream.html" title="GFileOutputStream"><span class="type">GFileOutputStream</span></a> or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-append-to-async"></a><h3>g_file_append_to_async ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                g_file_append_to_async              (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><span class="type">int</span> io_priority</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>
Asynchronously opens <em class="parameter"><code>file</code></em> for appending.
</p>
<p>
For more details, see <a class="link" href="GFile.html#g-file-append-to" title="g_file_append_to ()"><code class="function">g_file_append_to()</code></a> which is
the synchronous version of this call.
</p>
<p>
When the operation is finished, <em class="parameter"><code>callback</code></em> will be called. You can then call
<a class="link" href="GFile.html#g-file-append-to-finish" title="g_file_append_to_finish ()"><code class="function">g_file_append_to_finish()</code></a> to get the result of the operation.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>a set of <a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>io_priority</code></em> :</span></p></td>
<td>the <a class="link" href="gio-GIOScheduler.html#io-priority">I/O priority</a>
of the request.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> to call when the request is satisfied. <span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>the data to pass to callback function. <span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-append-to-finish"></a><h3>g_file_append_to_finish ()</h3>
<pre class="programlisting"><a class="link" href="GFileOutputStream.html" title="GFileOutputStream"><span class="returnvalue">GFileOutputStream</span></a> *      g_file_append_to_finish        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Finishes an asynchronous file append operation started with 
<a class="link" href="GFile.html#g-file-append-to-async" title="g_file_append_to_async ()"><code class="function">g_file_append_to_async()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>res</code></em> :</span></p></td>
<td><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a></td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a valid <a class="link" href="GFileOutputStream.html" title="GFileOutputStream"><span class="type">GFileOutputStream</span></a> or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-create-async"></a><h3>g_file_create_async ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                g_file_create_async                 (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><span class="type">int</span> io_priority</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>
Asynchronously creates a new file and returns an output stream for writing to it.
The file must not already exist.
</p>
<p>
For more details, see <a class="link" href="GFile.html#g-file-create" title="g_file_create ()"><code class="function">g_file_create()</code></a> which is
the synchronous version of this call.
</p>
<p>
When the operation is finished, <em class="parameter"><code>callback</code></em> will be called. You can then call
<a class="link" href="GFile.html#g-file-create-finish" title="g_file_create_finish ()"><code class="function">g_file_create_finish()</code></a> to get the result of the operation.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>a set of <a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>io_priority</code></em> :</span></p></td>
<td>the <a class="link" href="gio-GIOScheduler.html#io-priority">I/O priority</a>
of the request.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> to call when the request is satisfied. <span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>the data to pass to callback function. <span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-create-finish"></a><h3>g_file_create_finish ()</h3>
<pre class="programlisting"><a class="link" href="GFileOutputStream.html" title="GFileOutputStream"><span class="returnvalue">GFileOutputStream</span></a> *      g_file_create_finish           (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Finishes an asynchronous file create operation started with 
<a class="link" href="GFile.html#g-file-create-async" title="g_file_create_async ()"><code class="function">g_file_create_async()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>res</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a <a class="link" href="GFileOutputStream.html" title="GFileOutputStream"><span class="type">GFileOutputStream</span></a> or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-replace-async"></a><h3>g_file_replace_async ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                g_file_replace_async                (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *etag</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> make_backup</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><span class="type">int</span> io_priority</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>
Asynchronously overwrites the file, replacing the contents, possibly
creating a backup copy of the file first.
</p>
<p>
For more details, see <a class="link" href="GFile.html#g-file-replace" title="g_file_replace ()"><code class="function">g_file_replace()</code></a> which is
the synchronous version of this call.
</p>
<p>
When the operation is finished, <em class="parameter"><code>callback</code></em> will be called. You can then call
<a class="link" href="GFile.html#g-file-replace-finish" title="g_file_replace_finish ()"><code class="function">g_file_replace_finish()</code></a> to get the result of the operation.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>etag</code></em> :</span></p></td>
<td>an <a class="link" href="GFile.html#gfile-etag">entity tag</a> for the
current <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>, or NULL to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>make_backup</code></em> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a backup should be created.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>a set of <a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>io_priority</code></em> :</span></p></td>
<td>the <a class="link" href="gio-GIOScheduler.html#io-priority">I/O priority</a>
of the request.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> to call when the request is satisfied. <span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>the data to pass to callback function. <span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-replace-finish"></a><h3>g_file_replace_finish ()</h3>
<pre class="programlisting"><a class="link" href="GFileOutputStream.html" title="GFileOutputStream"><span class="returnvalue">GFileOutputStream</span></a> *      g_file_replace_finish          (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Finishes an asynchronous file replace operation started with 
<a class="link" href="GFile.html#g-file-replace-async" title="g_file_replace_async ()"><code class="function">g_file_replace_async()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>res</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a <a class="link" href="GFileOutputStream.html" title="GFileOutputStream"><span class="type">GFileOutputStream</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-query-info"></a><h3>g_file_query_info ()</h3>
<pre class="programlisting"><a class="link" href="GFileInfo.html" title="GFileInfo"><span class="returnvalue">GFileInfo</span></a> *              g_file_query_info              (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *attributes</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Gets the requested information about specified <em class="parameter"><code>file</code></em>. The result
is a <a class="link" href="GFileInfo.html" title="GFileInfo"><span class="type">GFileInfo</span></a> object that contains key-value attributes (such as 
the type or size of the file).
</p>
<p>
The <em class="parameter"><code>attributes</code></em> value is a string that specifies the file attributes that
should be gathered. It is not an error if it's not possible to read a particular
requested attribute from a file - it just won't be set. <em class="parameter"><code>attributes</code></em> should
be a comma-separated list of attributes or attribute wildcards. The wildcard "*"
means all attributes, and a wildcard like "standard::*" means all attributes in the standard
namespace. An example attribute query be "standard::*,owner::user".
The standard attributes are available as defines, like <a class="link" href="GFileInfo.html#G-FILE-ATTRIBUTE-STANDARD-NAME:CAPS" title="G_FILE_ATTRIBUTE_STANDARD_NAME"><span class="type">G_FILE_ATTRIBUTE_STANDARD_NAME</span></a>.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned. 
</p>
<p>
For symlinks, normally the information about the target of the
symlink is returned, rather than information about the symlink itself.
However if you pass <a class="link" href="GFile.html#G-FILE-QUERY-INFO-NOFOLLOW-SYMLINKS:CAPS"><span class="type">G_FILE_QUERY_INFO_NOFOLLOW_SYMLINKS</span></a> in <em class="parameter"><code>flags</code></em> the
information about the symlink itself will be returned. Also, for symlinks
that point to non-existing files the information about the symlink itself
will be returned.
</p>
<p>
If the file does not exist, the G_IO_ERROR_NOT_FOUND error will be returned.
Other errors are possible too, and depend on what kind of filesystem the file is on.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>attributes</code></em> :</span></p></td>
<td>an attribute query string.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>a set of <a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a <a class="link" href="GFileInfo.html" title="GFileInfo"><span class="type">GFileInfo</span></a> for the given <em class="parameter"><code>file</code></em>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-query-info-async"></a><h3>g_file_query_info_async ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                g_file_query_info_async             (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *attributes</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><span class="type">int</span> io_priority</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>
Asynchronously gets the requested information about specified <em class="parameter"><code>file</code></em>. The result
is a <a class="link" href="GFileInfo.html" title="GFileInfo"><span class="type">GFileInfo</span></a> object that contains key-value attributes (such as type or size
for the file).
</p>
<p>
For more details, see <a class="link" href="GFile.html#g-file-query-info" title="g_file_query_info ()"><code class="function">g_file_query_info()</code></a> which is
the synchronous version of this call.
</p>
<p>
When the operation is finished, <em class="parameter"><code>callback</code></em> will be called. You can then call
<a class="link" href="GFile.html#g-file-query-info-finish" title="g_file_query_info_finish ()"><code class="function">g_file_query_info_finish()</code></a> to get the result of the operation.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>attributes</code></em> :</span></p></td>
<td>an attribute query string.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>a set of <a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>io_priority</code></em> :</span></p></td>
<td>the <a class="link" href="gio-GIOScheduler.html#io-priority">I/O priority</a>
of the request.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> to call when the request is satisfied. <span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>the data to pass to callback function. <span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-query-info-finish"></a><h3>g_file_query_info_finish ()</h3>
<pre class="programlisting"><a class="link" href="GFileInfo.html" title="GFileInfo"><span class="returnvalue">GFileInfo</span></a> *              g_file_query_info_finish       (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Finishes an asynchronous file info query. 
See <a class="link" href="GFile.html#g-file-query-info-async" title="g_file_query_info_async ()"><code class="function">g_file_query_info_async()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>res</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a class="link" href="GFileInfo.html" title="GFileInfo"><span class="type">GFileInfo</span></a> for given <em class="parameter"><code>file</code></em> or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-query-exists"></a><h3>g_file_query_exists ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_query_exists                 (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>);</pre>
<p>
Utility function to check if a particular file exists. This is
implemented using <a class="link" href="GFile.html#g-file-query-info" title="g_file_query_info ()"><code class="function">g_file_query_info()</code></a> and as such does blocking I/O.
</p>
<p>
Note that in many cases it is racy to first check for file existence
and then execute something based on the outcome of that, because the
file might have been created or removed in between the operations. The
general approach to handling that is to not check, but just do the
operation and handle the errors as they come.
</p>
<p>
As an example of race-free checking, take the case of reading a file, and
if it doesn't exist, creating it. There are two racy versions: read it, and
on error create it; and: check if it exists, if not create it. These
can both result in two processes creating the file (with perhaps a partially
written file as the result). The correct approach is to always try to create
the file with <a class="link" href="GFile.html#g-file-create" title="g_file_create ()"><code class="function">g_file_create()</code></a> which will either atomically create the file
or fail with a G_IO_ERROR_EXISTS error.
</p>
<p>
However, in many cases an existence check is useful in a user
interface, for instance to make a menu item sensitive/insensitive, so that
you don't have to fool users that something is possible and then just show
and error dialog. If you do this, you should make sure to also handle the
errors that can happen due to races when you execute the operation.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the file exists (and can be detected without error), <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise (or if cancelled).</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-query-file-type"></a><h3>g_file_query_file_type ()</h3>
<pre class="programlisting"><a class="link" href="GFileInfo.html#GFileType" title="enum GFileType"><span class="returnvalue">GFileType</span></a>           g_file_query_file_type              (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>);</pre>
<p>
Utility function to inspect the <a class="link" href="GFileInfo.html#GFileType" title="enum GFileType"><span class="type">GFileType</span></a> of a file. This is
implemented using <a class="link" href="GFile.html#g-file-query-info" title="g_file_query_info ()"><code class="function">g_file_query_info()</code></a> and as such does blocking I/O.
</p>
<p>
The primary use case of this method is to check if a file is a regular file,
directory, or symlink.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>a set of <a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a> passed to <a class="link" href="GFile.html#g-file-query-info" title="g_file_query_info ()"><code class="function">g_file_query_info()</code></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>The <a class="link" href="GFileInfo.html#GFileType" title="enum GFileType"><span class="type">GFileType</span></a> of the file and <a class="link" href="GFileInfo.html#G-FILE-TYPE-UNKNOWN:CAPS"><span class="type">G_FILE_TYPE_UNKNOWN</span></a> if the file
does not exist</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.18</p>
</div>
<hr>
<div class="refsect2">
<a name="g-file-query-filesystem-info"></a><h3>g_file_query_filesystem_info ()</h3>
<pre class="programlisting"><a class="link" href="GFileInfo.html" title="GFileInfo"><span class="returnvalue">GFileInfo</span></a> *              g_file_query_filesystem_info   (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *attributes</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Similar to <a class="link" href="GFile.html#g-file-query-info" title="g_file_query_info ()"><code class="function">g_file_query_info()</code></a>, but obtains information
about the filesystem the <em class="parameter"><code>file</code></em> is on, rather than the file itself.
For instance the amount of space available and the type of
the filesystem.
</p>
<p>
The <em class="parameter"><code>attributes</code></em> value is a string that specifies the file attributes that
should be gathered. It is not an error if it's not possible to read a particular
requested attribute from a file - it just won't be set. <em class="parameter"><code>attributes</code></em> should
be a comma-separated list of attributes or attribute wildcards. The wildcard "*"
means all attributes, and a wildcard like "filesystem::*" means all attributes in the
filesystem namespace. The standard namespace for filesystem attributes is "filesystem".
Common attributes of interest are <a class="link" href="GFileInfo.html#G-FILE-ATTRIBUTE-FILESYSTEM-SIZE:CAPS" title="G_FILE_ATTRIBUTE_FILESYSTEM_SIZE"><span class="type">G_FILE_ATTRIBUTE_FILESYSTEM_SIZE</span></a>
(the total size of the filesystem in bytes), <a class="link" href="GFileInfo.html#G-FILE-ATTRIBUTE-FILESYSTEM-FREE:CAPS" title="G_FILE_ATTRIBUTE_FILESYSTEM_FREE"><span class="type">G_FILE_ATTRIBUTE_FILESYSTEM_FREE</span></a> (number of
bytes available), and <a class="link" href="GFileInfo.html#G-FILE-ATTRIBUTE-FILESYSTEM-TYPE:CAPS" title="G_FILE_ATTRIBUTE_FILESYSTEM_TYPE"><span class="type">G_FILE_ATTRIBUTE_FILESYSTEM_TYPE</span></a> (type of the filesystem).
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned. 
</p>
<p>
If the file does not exist, the G_IO_ERROR_NOT_FOUND error will be returned.
Other errors are possible too, and depend on what kind of filesystem the file is on.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>attributes</code></em> :</span></p></td>
<td>an attribute query string.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a <a class="link" href="GFileInfo.html" title="GFileInfo"><span class="type">GFileInfo</span></a> or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if there was an error.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-query-filesystem-info-async"></a><h3>g_file_query_filesystem_info_async ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                g_file_query_filesystem_info_async  (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *attributes</code></em>,
                                                         <em class="parameter"><code><span class="type">int</span> io_priority</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>
Asynchronously gets the requested information about the filesystem
that the specified <em class="parameter"><code>file</code></em> is on. The result is a <a class="link" href="GFileInfo.html" title="GFileInfo"><span class="type">GFileInfo</span></a> object
that contains key-value attributes (such as type or size for the
file).
</p>
<p>
For more details, see <a class="link" href="GFile.html#g-file-query-filesystem-info" title="g_file_query_filesystem_info ()"><code class="function">g_file_query_filesystem_info()</code></a> which is the
synchronous version of this call.
</p>
<p>
When the operation is finished, <em class="parameter"><code>callback</code></em> will be called. You can
then call <a class="link" href="GFile.html#g-file-query-info-finish" title="g_file_query_info_finish ()"><code class="function">g_file_query_info_finish()</code></a> to get the result of the
operation.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>attributes</code></em> :</span></p></td>
<td>an attribute query string.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>io_priority</code></em> :</span></p></td>
<td>the <a class="link" href="gio-GIOScheduler.html#io-priority">I/O priority</a>
of the request.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> to call when the request is satisfied. <span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>the data to pass to callback function. <span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-query-filesystem-info-finish"></a><h3>g_file_query_filesystem_info_finish ()</h3>
<pre class="programlisting"><a class="link" href="GFileInfo.html" title="GFileInfo"><span class="returnvalue">GFileInfo</span></a> *              g_file_query_filesystem_info_finish
                                                        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Finishes an asynchronous filesystem info query.  See
<a class="link" href="GFile.html#g-file-query-filesystem-info-async" title="g_file_query_filesystem_info_async ()"><code class="function">g_file_query_filesystem_info_async()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>res</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a class="link" href="GFileInfo.html" title="GFileInfo"><span class="type">GFileInfo</span></a> for given <em class="parameter"><code>file</code></em> or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-query-default-handler"></a><h3>g_file_query_default_handler ()</h3>
<pre class="programlisting"><a class="link" href="GAppInfo.html" title="GAppInfo"><span class="returnvalue">GAppInfo</span></a> *          g_file_query_default_handler        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Returns the <a class="link" href="GAppInfo.html" title="GAppInfo"><span class="type">GAppInfo</span></a> that is registered as the default
application to handle the file specified by <em class="parameter"><code>file</code></em>.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> to open.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a <a class="link" href="GAppInfo.html" title="GAppInfo"><span class="type">GAppInfo</span></a> if the handle was found, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if there were errors.
When you are done with it, release it with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-find-enclosing-mount"></a><h3>g_file_find_enclosing_mount ()</h3>
<pre class="programlisting"><a class="link" href="GMount.html" title="GMount"><span class="returnvalue">GMount</span></a> *                 g_file_find_enclosing_mount    (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Gets a <a class="link" href="GMount.html" title="GMount"><span class="type">GMount</span></a> for the <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>. 
</p>
<p>
If the <a class="link" href="GFile.html#GFileIface" title="struct GFileIface"><span class="type">GFileIface</span></a> for <em class="parameter"><code>file</code></em> does not have a mount (e.g. possibly a 
remote share), <em class="parameter"><code>error</code></em> will be set to <a class="link" href="gio-GIOError.html#G-IO-ERROR-NOT-FOUND:CAPS"><code class="literal">G_IO_ERROR_NOT_FOUND</code></a> and <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
will be returned.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a <a class="link" href="GMount.html" title="GMount"><span class="type">GMount</span></a> where the <em class="parameter"><code>file</code></em> is located or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-find-enclosing-mount-async"></a><h3>g_file_find_enclosing_mount_async ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                g_file_find_enclosing_mount_async   (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><span class="type">int</span> io_priority</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>
Asynchronously gets the mount for the file.
</p>
<p>
For more details, see <a class="link" href="GFile.html#g-file-find-enclosing-mount" title="g_file_find_enclosing_mount ()"><code class="function">g_file_find_enclosing_mount()</code></a> which is
the synchronous version of this call.
</p>
<p>
When the operation is finished, <em class="parameter"><code>callback</code></em> will be called. You can then call
<a class="link" href="GFile.html#g-file-find-enclosing-mount-finish" title="g_file_find_enclosing_mount_finish ()"><code class="function">g_file_find_enclosing_mount_finish()</code></a> to get the result of the operation.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>io_priority</code></em> :</span></p></td>
<td>the <a class="link" href="gio-GIOScheduler.html#io-priority">I/O priority</a>
of the request.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> to call when the request is satisfied. <span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>the data to pass to callback function. <span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-find-enclosing-mount-finish"></a><h3>g_file_find_enclosing_mount_finish ()</h3>
<pre class="programlisting"><a class="link" href="GMount.html" title="GMount"><span class="returnvalue">GMount</span></a> *                 g_file_find_enclosing_mount_finish
                                                        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Finishes an asynchronous find mount request. 
See <a class="link" href="GFile.html#g-file-find-enclosing-mount-async" title="g_file_find_enclosing_mount_async ()"><code class="function">g_file_find_enclosing_mount_async()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>res</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a class="link" href="GMount.html" title="GMount"><span class="type">GMount</span></a> for given <em class="parameter"><code>file</code></em> or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-enumerate-children"></a><h3>g_file_enumerate_children ()</h3>
<pre class="programlisting"><a class="link" href="GFileEnumerator.html" title="GFileEnumerator"><span class="returnvalue">GFileEnumerator</span></a> *        g_file_enumerate_children      (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *attributes</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Gets the requested information about the files in a directory. The result
is a <a class="link" href="GFileEnumerator.html" title="GFileEnumerator"><span class="type">GFileEnumerator</span></a> object that will give out <a class="link" href="GFileInfo.html" title="GFileInfo"><span class="type">GFileInfo</span></a> objects for
all the files in the directory.
</p>
<p>
The <em class="parameter"><code>attributes</code></em> value is a string that specifies the file attributes that
should be gathered. It is not an error if it's not possible to read a particular
requested attribute from a file - it just won't be set. <em class="parameter"><code>attributes</code></em> should
be a comma-separated list of attributes or attribute wildcards. The wildcard "*"
means all attributes, and a wildcard like "standard::*" means all attributes in the standard
namespace. An example attribute query be "standard::*,owner::user".
The standard attributes are available as defines, like <a class="link" href="GFileInfo.html#G-FILE-ATTRIBUTE-STANDARD-NAME:CAPS" title="G_FILE_ATTRIBUTE_STANDARD_NAME"><span class="type">G_FILE_ATTRIBUTE_STANDARD_NAME</span></a>.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned. 
</p>
<p>
If the file does not exist, the G_IO_ERROR_NOT_FOUND error will be returned.
If the file is not a directory, the G_FILE_ERROR_NOTDIR error will be returned.
Other errors are possible too.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>attributes</code></em> :</span></p></td>
<td>an attribute query string.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>a set of <a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> for error reporting.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>A <a class="link" href="GFileEnumerator.html" title="GFileEnumerator"><span class="type">GFileEnumerator</span></a> if successful, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-enumerate-children-async"></a><h3>g_file_enumerate_children_async ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                g_file_enumerate_children_async     (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *attributes</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><span class="type">int</span> io_priority</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>
Asynchronously gets the requested information about the files in a directory. The result
is a <a class="link" href="GFileEnumerator.html" title="GFileEnumerator"><span class="type">GFileEnumerator</span></a> object that will give out <a class="link" href="GFileInfo.html" title="GFileInfo"><span class="type">GFileInfo</span></a> objects for
all the files in the directory.
</p>
<p>
For more details, see <a class="link" href="GFile.html#g-file-enumerate-children" title="g_file_enumerate_children ()"><code class="function">g_file_enumerate_children()</code></a> which is
the synchronous version of this call.
</p>
<p>
When the operation is finished, <em class="parameter"><code>callback</code></em> will be called. You can then call
<a class="link" href="GFile.html#g-file-enumerate-children-finish" title="g_file_enumerate_children_finish ()"><code class="function">g_file_enumerate_children_finish()</code></a> to get the result of the operation.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>attributes</code></em> :</span></p></td>
<td>an attribute query string.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>a set of <a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>io_priority</code></em> :</span></p></td>
<td>the <a class="link" href="gio-GIOScheduler.html#io-priority">I/O priority</a>
of the request.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> to call when the
request is satisfied. <span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>the data to pass to callback function. <span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-enumerate-children-finish"></a><h3>g_file_enumerate_children_finish ()</h3>
<pre class="programlisting"><a class="link" href="GFileEnumerator.html" title="GFileEnumerator"><span class="returnvalue">GFileEnumerator</span></a> *        g_file_enumerate_children_finish
                                                        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Finishes an async enumerate children operation.
See <a class="link" href="GFile.html#g-file-enumerate-children-async" title="g_file_enumerate_children_async ()"><code class="function">g_file_enumerate_children_async()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>res</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a <a class="link" href="GFileEnumerator.html" title="GFileEnumerator"><span class="type">GFileEnumerator</span></a> or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if an error occurred.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-set-display-name"></a><h3>g_file_set_display_name ()</h3>
<pre class="programlisting"><a class="link" href="GFile.html" title="GFile"><span class="returnvalue">GFile</span></a> *                  g_file_set_display_name        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *display_name</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Renames <em class="parameter"><code>file</code></em> to the specified display name.
</p>
<p>
The display name is converted from UTF8 to the correct encoding for the target
filesystem if possible and the <em class="parameter"><code>file</code></em> is renamed to this.
</p>
<p>
If you want to implement a rename operation in the user interface the edit name
(<a class="link" href="GFileInfo.html#G-FILE-ATTRIBUTE-STANDARD-EDIT-NAME:CAPS" title="G_FILE_ATTRIBUTE_STANDARD_EDIT_NAME"><span class="type">G_FILE_ATTRIBUTE_STANDARD_EDIT_NAME</span></a>) should be used as the initial value in the rename
widget, and then the result after editing should be passed to <a class="link" href="GFile.html#g-file-set-display-name" title="g_file_set_display_name ()"><code class="function">g_file_set_display_name()</code></a>.
</p>
<p>
On success the resulting converted filename is returned.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>display_name</code></em> :</span></p></td>
<td>a string.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> specifying what <em class="parameter"><code>file</code></em> was renamed to, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
if there was an error.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-set-display-name-async"></a><h3>g_file_set_display_name_async ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                g_file_set_display_name_async       (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *display_name</code></em>,
                                                         <em class="parameter"><code><span class="type">int</span> io_priority</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>
Asynchronously sets the display name for a given <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.
</p>
<p>
For more details, see <a class="link" href="GFile.html#g-file-set-display-name" title="g_file_set_display_name ()"><code class="function">g_file_set_display_name()</code></a> which is
the synchronous version of this call.
</p>
<p>
When the operation is finished, <em class="parameter"><code>callback</code></em> will be called. You can then call
<a class="link" href="GFile.html#g-file-set-display-name-finish" title="g_file_set_display_name_finish ()"><code class="function">g_file_set_display_name_finish()</code></a> to get the result of the operation.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>display_name</code></em> :</span></p></td>
<td>a string.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>io_priority</code></em> :</span></p></td>
<td>the <a class="link" href="gio-GIOScheduler.html#io-priority">I/O priority</a>
of the request.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> to call when the request is satisfied. <span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>the data to pass to callback function. <span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-set-display-name-finish"></a><h3>g_file_set_display_name_finish ()</h3>
<pre class="programlisting"><a class="link" href="GFile.html" title="GFile"><span class="returnvalue">GFile</span></a> *                  g_file_set_display_name_finish (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Finishes setting a display name started with 
<a class="link" href="GFile.html#g-file-set-display-name-async" title="g_file_set_display_name_async ()"><code class="function">g_file_set_display_name_async()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>res</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-delete"></a><h3>g_file_delete ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_delete                       (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Deletes a file. If the <em class="parameter"><code>file</code></em> is a directory, it will only be deleted if it 
is empty.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned. 
</p>
<p>
Virtual: delete_file
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the file was deleted. <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-trash"></a><h3>g_file_trash ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_trash                        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Sends <em class="parameter"><code>file</code></em> to the "Trashcan", if possible. This is similar to
deleting it, but the user can recover it before emptying the trashcan.
Not all file systems support trashing, so this call can return the
<a class="link" href="gio-GIOError.html#G-IO-ERROR-NOT-SUPPORTED:CAPS"><code class="literal">G_IO_ERROR_NOT_SUPPORTED</code></a> error.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>
<a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> to send to trash.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on successful trash, <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-copy"></a><h3>g_file_copy ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_copy                         (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *source</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *destination</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCopyFlags" title="enum GFileCopyFlags"><span class="type">GFileCopyFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileProgressCallback" title="GFileProgressCallback ()"><span class="type">GFileProgressCallback</span></a> progress_callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> progress_callback_data</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Copies the file <em class="parameter"><code>source</code></em> to the location specified by <em class="parameter"><code>destination</code></em>.
Can not handle recursive copies of directories.
</p>
<p>
If the flag <a class="link" href="GFile.html#G-FILE-COPY-OVERWRITE:CAPS"><span class="type">G_FILE_COPY_OVERWRITE</span></a> is specified an already
existing <em class="parameter"><code>destination</code></em> file is overwritten.
</p>
<p>
If the flag <a class="link" href="GFile.html#G-FILE-COPY-NOFOLLOW-SYMLINKS:CAPS"><span class="type">G_FILE_COPY_NOFOLLOW_SYMLINKS</span></a> is specified then symlinks
will be copied as symlinks, otherwise the target of the
<em class="parameter"><code>source</code></em> symlink will be copied.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned. 
</p>
<p>
If <em class="parameter"><code>progress_callback</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be monitored by
setting this to a <a class="link" href="GFile.html#GFileProgressCallback" title="GFileProgressCallback ()"><span class="type">GFileProgressCallback</span></a> function. <em class="parameter"><code>progress_callback_data</code></em>
will be passed to this function. It is guaranteed that this callback will
be called after all data has been transferred with the total number of bytes
copied during the operation.
</p>
<p>
If the <em class="parameter"><code>source</code></em> file does not exist then the G_IO_ERROR_NOT_FOUND
error is returned, independent on the status of the <em class="parameter"><code>destination</code></em>.
</p>
<p>
If <a class="link" href="GFile.html#G-FILE-COPY-OVERWRITE:CAPS"><span class="type">G_FILE_COPY_OVERWRITE</span></a> is not specified and the target exists, then the
error G_IO_ERROR_EXISTS is returned.
</p>
<p>
If trying to overwrite a file over a directory the G_IO_ERROR_IS_DIRECTORY
error is returned. If trying to overwrite a directory with a directory the
G_IO_ERROR_WOULD_MERGE error is returned.
</p>
<p>
If the source is a directory and the target does not exist, or <a class="link" href="GFile.html#G-FILE-COPY-OVERWRITE:CAPS"><span class="type">G_FILE_COPY_OVERWRITE</span></a> is
specified and the target is a file, then the G_IO_ERROR_WOULD_RECURSE error
is returned.
</p>
<p>
If you are interested in copying the <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> object itself (not the on-disk
file), see <a class="link" href="GFile.html#g-file-dup" title="g_file_dup ()"><code class="function">g_file_dup()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>source</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>destination</code></em> :</span></p></td>
<td>destination <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>set of <a class="link" href="GFile.html#GFileCopyFlags" title="enum GFileCopyFlags"><span class="type">GFileCopyFlags</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>progress_callback</code></em> :</span></p></td>
<td>function to callback with progress information. <span class="annotation">[<acronym title="The callback is valid only during the call to the method."><span class="acronym">scope call</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>progress_callback_data</code></em> :</span></p></td>
<td>user data to pass to <em class="parameter"><code>progress_callback</code></em>. <span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> to set on error, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on success, <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-copy-async"></a><h3>g_file_copy_async ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                g_file_copy_async                   (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *source</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *destination</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCopyFlags" title="enum GFileCopyFlags"><span class="type">GFileCopyFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><span class="type">int</span> io_priority</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileProgressCallback" title="GFileProgressCallback ()"><span class="type">GFileProgressCallback</span></a> progress_callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> progress_callback_data</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>
Copies the file <em class="parameter"><code>source</code></em> to the location specified by <em class="parameter"><code>destination</code></em> 
asynchronously. For details of the behaviour, see <a class="link" href="GFile.html#g-file-copy" title="g_file_copy ()"><code class="function">g_file_copy()</code></a>.
</p>
<p>
If <em class="parameter"><code>progress_callback</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then that function that will be called
just like in <a class="link" href="GFile.html#g-file-copy" title="g_file_copy ()"><code class="function">g_file_copy()</code></a>, however the callback will run in the main loop,
not in the thread that is doing the I/O operation.
</p>
<p>
When the operation is finished, <em class="parameter"><code>callback</code></em> will be called. You can then call
<a class="link" href="GFile.html#g-file-copy-finish" title="g_file_copy_finish ()"><code class="function">g_file_copy_finish()</code></a> to get the result of the operation.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>source</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>destination</code></em> :</span></p></td>
<td>destination <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>set of <a class="link" href="GFile.html#GFileCopyFlags" title="enum GFileCopyFlags"><span class="type">GFileCopyFlags</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>io_priority</code></em> :</span></p></td>
<td>the <a class="link" href="gio-GIOScheduler.html#io-priority">I/O priority</a>
of the request.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>progress_callback</code></em> :</span></p></td>
<td>function to callback with progress information</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>progress_callback_data</code></em> :</span></p></td>
<td>user data to pass to <em class="parameter"><code>progress_callback</code></em>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> to call when the request is satisfied</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>the data to pass to callback function</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-copy-finish"></a><h3>g_file_copy_finish ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_copy_finish                  (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Finishes copying the file started with 
<a class="link" href="GFile.html#g-file-copy-async" title="g_file_copy_async ()"><code class="function">g_file_copy_async()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>res</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on success, <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> on error.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-move"></a><h3>g_file_move ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_move                         (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *source</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *destination</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCopyFlags" title="enum GFileCopyFlags"><span class="type">GFileCopyFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileProgressCallback" title="GFileProgressCallback ()"><span class="type">GFileProgressCallback</span></a> progress_callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> progress_callback_data</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Tries to move the file or directory <em class="parameter"><code>source</code></em> to the location specified by <em class="parameter"><code>destination</code></em>.
If native move operations are supported then this is used, otherwise a copy + delete
fallback is used. The native implementation may support moving directories (for instance
on moves inside the same filesystem), but the fallback code does not.
</p>
<p>
If the flag <a class="link" href="GFile.html#G-FILE-COPY-OVERWRITE:CAPS"><span class="type">G_FILE_COPY_OVERWRITE</span></a> is specified an already
existing <em class="parameter"><code>destination</code></em> file is overwritten.
</p>
<p>
If the flag <a class="link" href="GFile.html#G-FILE-COPY-NOFOLLOW-SYMLINKS:CAPS"><span class="type">G_FILE_COPY_NOFOLLOW_SYMLINKS</span></a> is specified then symlinks
will be copied as symlinks, otherwise the target of the
<em class="parameter"><code>source</code></em> symlink will be copied.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned. 
</p>
<p>
If <em class="parameter"><code>progress_callback</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be monitored by
setting this to a <a class="link" href="GFile.html#GFileProgressCallback" title="GFileProgressCallback ()"><span class="type">GFileProgressCallback</span></a> function. <em class="parameter"><code>progress_callback_data</code></em>
will be passed to this function. It is guaranteed that this callback will
be called after all data has been transferred with the total number of bytes
copied during the operation.
</p>
<p>
If the <em class="parameter"><code>source</code></em> file does not exist then the G_IO_ERROR_NOT_FOUND
error is returned, independent on the status of the <em class="parameter"><code>destination</code></em>.
</p>
<p>
If <a class="link" href="GFile.html#G-FILE-COPY-OVERWRITE:CAPS"><span class="type">G_FILE_COPY_OVERWRITE</span></a> is not specified and the target exists, then the
error G_IO_ERROR_EXISTS is returned.
</p>
<p>
If trying to overwrite a file over a directory the G_IO_ERROR_IS_DIRECTORY
error is returned. If trying to overwrite a directory with a directory the
G_IO_ERROR_WOULD_MERGE error is returned.
</p>
<p>
If the source is a directory and the target does not exist, or <a class="link" href="GFile.html#G-FILE-COPY-OVERWRITE:CAPS"><span class="type">G_FILE_COPY_OVERWRITE</span></a> is
specified and the target is a file, then the G_IO_ERROR_WOULD_RECURSE error
may be returned (if the native move operation isn't available).
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>source</code></em> :</span></p></td>
<td>
<a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> pointing to the source location.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>destination</code></em> :</span></p></td>
<td>
<a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> pointing to the destination location.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>set of <a class="link" href="GFile.html#GFileCopyFlags" title="enum GFileCopyFlags"><span class="type">GFileCopyFlags</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>progress_callback</code></em> :</span></p></td>
<td>
<a class="link" href="GFile.html#GFileProgressCallback" title="GFileProgressCallback ()"><span class="type">GFileProgressCallback</span></a> function for updates. <span class="annotation">[<acronym title="The callback is valid only during the call to the method."><span class="acronym">scope call</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>progress_callback_data</code></em> :</span></p></td>
<td>gpointer to user data for the callback function. <span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> for returning error conditions, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on successful move, <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-make-directory"></a><h3>g_file_make_directory ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_make_directory               (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Creates a directory. Note that this will only create a child directory of
the immediate parent directory of the path or URI given by the <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>. To 
recursively create directories, see <a class="link" href="GFile.html#g-file-make-directory-with-parents" title="g_file_make_directory_with_parents ()"><code class="function">g_file_make_directory_with_parents()</code></a>.
This function will fail if the parent directory does not exist, setting 
<em class="parameter"><code>error</code></em> to <a class="link" href="gio-GIOError.html#G-IO-ERROR-NOT-FOUND:CAPS"><code class="literal">G_IO_ERROR_NOT_FOUND</code></a>. If the file system doesn't support creating
directories, this function will fail, setting <em class="parameter"><code>error</code></em> to 
<a class="link" href="gio-GIOError.html#G-IO-ERROR-NOT-SUPPORTED:CAPS"><code class="literal">G_IO_ERROR_NOT_SUPPORTED</code></a>.
</p>
<p>
For a local <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> the newly created directory will have the default
(current) ownership and permissions of the current process.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on successful creation, <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-make-directory-with-parents"></a><h3>g_file_make_directory_with_parents ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_make_directory_with_parents  (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Creates a directory and any parent directories that may not exist similar to
'mkdir -p'. If the file system does not support creating directories, this
function will fail, setting <em class="parameter"><code>error</code></em> to <a class="link" href="gio-GIOError.html#G-IO-ERROR-NOT-SUPPORTED:CAPS"><code class="literal">G_IO_ERROR_NOT_SUPPORTED</code></a>.
</p>
<p>
For a local <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> the newly created directories will have the default
(current) ownership and permissions of the current process.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if all directories have been successfully created, <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>
otherwise.</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.18</p>
</div>
<hr>
<div class="refsect2">
<a name="g-file-make-symbolic-link"></a><h3>g_file_make_symbolic_link ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_make_symbolic_link           (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *symlink_value</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Creates a symbolic link named <em class="parameter"><code>file</code></em> which contains the string
<em class="parameter"><code>symlink_value</code></em>.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> with the name of the symlink to create</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>symlink_value</code></em> :</span></p></td>
<td>a string with the path for the target of the new symlink</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on the creation of a new symlink, <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-query-settable-attributes"></a><h3>g_file_query_settable_attributes ()</h3>
<pre class="programlisting"><a class="link" href="gio-GFileAttribute.html#GFileAttributeInfoList" title="GFileAttributeInfoList"><span class="returnvalue">GFileAttributeInfoList</span></a> * g_file_query_settable_attributes
                                                        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Obtain the list of settable attributes for the file.
</p>
<p>
Returns the type and full attribute name of all the attributes 
that can be set on this file. This doesn't mean setting it will always 
succeed though, you might get an access failure, or some specific 
file may not support a specific attribute.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a <a class="link" href="gio-GFileAttribute.html#GFileAttributeInfoList" title="GFileAttributeInfoList"><span class="type">GFileAttributeInfoList</span></a> describing the settable attributes.
When you are done with it, release it with <a class="link" href="gio-GFileAttribute.html#g-file-attribute-info-list-unref" title="g_file_attribute_info_list_unref ()"><code class="function">g_file_attribute_info_list_unref()</code></a>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-query-writable-namespaces"></a><h3>g_file_query_writable_namespaces ()</h3>
<pre class="programlisting"><a class="link" href="gio-GFileAttribute.html#GFileAttributeInfoList" title="GFileAttributeInfoList"><span class="returnvalue">GFileAttributeInfoList</span></a> * g_file_query_writable_namespaces
                                                        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Obtain the list of attribute namespaces where new attributes 
can be created by a user. An example of this is extended
attributes (in the "xattr" namespace).
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a <a class="link" href="gio-GFileAttribute.html#GFileAttributeInfoList" title="GFileAttributeInfoList"><span class="type">GFileAttributeInfoList</span></a> describing the writable namespaces.
When you are done with it, release it with <a class="link" href="gio-GFileAttribute.html#g-file-attribute-info-list-unref" title="g_file_attribute_info_list_unref ()"><code class="function">g_file_attribute_info_list_unref()</code></a>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-set-attribute"></a><h3>g_file_set_attribute ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_set_attribute                (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *attribute</code></em>,
                                                         <em class="parameter"><code><a class="link" href="gio-GFileAttribute.html#GFileAttributeType" title="enum GFileAttributeType"><span class="type">GFileAttributeType</span></a> type</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> value_p</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Sets an attribute in the file with attribute name <em class="parameter"><code>attribute</code></em> to <em class="parameter"><code>value</code></em>.
</p>
<p>
Some attributes can be unset by setting <em class="parameter"><code>attribute</code></em> to
<a class="link" href="gio-GFileAttribute.html#G-FILE-ATTRIBUTE-TYPE-INVALID:CAPS"><code class="literal">G_FILE_ATTRIBUTE_TYPE_INVALID</code></a> and <em class="parameter"><code>value</code></em> to <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>attribute</code></em> :</span></p></td>
<td>a string containing the attribute's name.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>type</code></em> :</span></p></td>
<td>The type of the attribute</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>value_p</code></em> :</span></p></td>
<td>a pointer to the value (or the pointer itself if the type is a pointer type)</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>a set of <a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the attribute was set, <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-set-attributes-from-info"></a><h3>g_file_set_attributes_from_info ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_set_attributes_from_info     (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFileInfo.html" title="GFileInfo"><span class="type">GFileInfo</span></a> *info</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Tries to set all attributes in the <a class="link" href="GFileInfo.html" title="GFileInfo"><span class="type">GFileInfo</span></a> on the target values, 
not stopping on the first error.
</p>
<p>
If there is any error during this operation then <em class="parameter"><code>error</code></em> will be set to
the first error. Error on particular fields are flagged by setting 
the "status" field in the attribute value to 
<a class="link" href="gio-GFileAttribute.html#G-FILE-ATTRIBUTE-STATUS-ERROR-SETTING:CAPS"><code class="literal">G_FILE_ATTRIBUTE_STATUS_ERROR_SETTING</code></a>, which means you can also detect
further errors.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
<td>a <a class="link" href="GFileInfo.html" title="GFileInfo"><span class="type">GFileInfo</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td><a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a></td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if there was any error, <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-set-attributes-async"></a><h3>g_file_set_attributes_async ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                g_file_set_attributes_async         (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFileInfo.html" title="GFileInfo"><span class="type">GFileInfo</span></a> *info</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><span class="type">int</span> io_priority</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>
Asynchronously sets the attributes of <em class="parameter"><code>file</code></em> with <em class="parameter"><code>info</code></em>.
</p>
<p>
For more details, see <a class="link" href="GFile.html#g-file-set-attributes-from-info" title="g_file_set_attributes_from_info ()"><code class="function">g_file_set_attributes_from_info()</code></a> which is
the synchronous version of this call.
</p>
<p>
When the operation is finished, <em class="parameter"><code>callback</code></em> will be called. You can then call
<a class="link" href="GFile.html#g-file-set-attributes-finish" title="g_file_set_attributes_finish ()"><code class="function">g_file_set_attributes_finish()</code></a> to get the result of the operation.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
<td>a <a class="link" href="GFileInfo.html" title="GFileInfo"><span class="type">GFileInfo</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>a <a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>io_priority</code></em> :</span></p></td>
<td>the <a class="link" href="gio-GIOScheduler.html#io-priority">I/O priority</a>
of the request.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a>. <span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>. <span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-set-attributes-finish"></a><h3>g_file_set_attributes_finish ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_set_attributes_finish        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *result</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFileInfo.html" title="GFileInfo"><span class="type">GFileInfo</span></a> **info</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Finishes setting an attribute started in <a class="link" href="GFile.html#g-file-set-attributes-async" title="g_file_set_attributes_async ()"><code class="function">g_file_set_attributes_async()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>result</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>info</code></em> :</span></p></td>
<td>a <a class="link" href="GFileInfo.html" title="GFileInfo"><span class="type">GFileInfo</span></a>. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the attributes were set correctly, <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-set-attribute-string"></a><h3>g_file_set_attribute_string ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_set_attribute_string         (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *attribute</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *value</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Sets <em class="parameter"><code>attribute</code></em> of type <a class="link" href="gio-GFileAttribute.html#G-FILE-ATTRIBUTE-TYPE-STRING:CAPS"><code class="literal">G_FILE_ATTRIBUTE_TYPE_STRING</code></a> to <em class="parameter"><code>value</code></em>. 
If <em class="parameter"><code>attribute</code></em> is of a different type, this operation will fail.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>attribute</code></em> :</span></p></td>
<td>a string containing the attribute's name.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
<td>a string containing the attribute's value.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>
<a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the <em class="parameter"><code>attribute</code></em> was successfully set, <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-set-attribute-byte-string"></a><h3>g_file_set_attribute_byte_string ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_set_attribute_byte_string    (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *attribute</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *value</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Sets <em class="parameter"><code>attribute</code></em> of type <a class="link" href="gio-GFileAttribute.html#G-FILE-ATTRIBUTE-TYPE-BYTE-STRING:CAPS"><code class="literal">G_FILE_ATTRIBUTE_TYPE_BYTE_STRING</code></a> to <em class="parameter"><code>value</code></em>. 
If <em class="parameter"><code>attribute</code></em> is of a different type, this operation will fail, 
returning <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>. 
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>attribute</code></em> :</span></p></td>
<td>a string containing the attribute's name.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
<td>a string containing the attribute's new value.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>a <a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the <em class="parameter"><code>attribute</code></em> was successfully set to <em class="parameter"><code>value</code></em>
in the <em class="parameter"><code>file</code></em>, <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-set-attribute-uint32"></a><h3>g_file_set_attribute_uint32 ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_set_attribute_uint32         (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *attribute</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> value</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Sets <em class="parameter"><code>attribute</code></em> of type <a class="link" href="gio-GFileAttribute.html#G-FILE-ATTRIBUTE-TYPE-UINT32:CAPS"><code class="literal">G_FILE_ATTRIBUTE_TYPE_UINT32</code></a> to <em class="parameter"><code>value</code></em>. 
If <em class="parameter"><code>attribute</code></em> is of a different type, this operation will fail.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>attribute</code></em> :</span></p></td>
<td>a string containing the attribute's name.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Basic-Types.html#guint32"><span class="type">guint32</span></a> containing the attribute's new value.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>a <a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the <em class="parameter"><code>attribute</code></em> was successfully set to <em class="parameter"><code>value</code></em>
in the <em class="parameter"><code>file</code></em>, <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-set-attribute-int32"></a><h3>g_file_set_attribute_int32 ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_set_attribute_int32          (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *attribute</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gint32"><span class="type">gint32</span></a> value</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Sets <em class="parameter"><code>attribute</code></em> of type <a class="link" href="gio-GFileAttribute.html#G-FILE-ATTRIBUTE-TYPE-INT32:CAPS"><code class="literal">G_FILE_ATTRIBUTE_TYPE_INT32</code></a> to <em class="parameter"><code>value</code></em>. 
If <em class="parameter"><code>attribute</code></em> is of a different type, this operation will fail.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>attribute</code></em> :</span></p></td>
<td>a string containing the attribute's name.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Basic-Types.html#gint32"><span class="type">gint32</span></a> containing the attribute's new value.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>a <a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the <em class="parameter"><code>attribute</code></em> was successfully set to <em class="parameter"><code>value</code></em>
in the <em class="parameter"><code>file</code></em>, <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-set-attribute-uint64"></a><h3>g_file_set_attribute_uint64 ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_set_attribute_uint64         (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *attribute</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a> value</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Sets <em class="parameter"><code>attribute</code></em> of type <a class="link" href="gio-GFileAttribute.html#G-FILE-ATTRIBUTE-TYPE-UINT64:CAPS"><code class="literal">G_FILE_ATTRIBUTE_TYPE_UINT64</code></a> to <em class="parameter"><code>value</code></em>. 
If <em class="parameter"><code>attribute</code></em> is of a different type, this operation will fail.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>attribute</code></em> :</span></p></td>
<td>a string containing the attribute's name.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a> containing the attribute's new value.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>a <a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the <em class="parameter"><code>attribute</code></em> was successfully set to <em class="parameter"><code>value</code></em>
in the <em class="parameter"><code>file</code></em>, <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-set-attribute-int64"></a><h3>g_file_set_attribute_int64 ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_set_attribute_int64          (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *attribute</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gint64"><span class="type">gint64</span></a> value</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Sets <em class="parameter"><code>attribute</code></em> of type <a class="link" href="gio-GFileAttribute.html#G-FILE-ATTRIBUTE-TYPE-INT64:CAPS"><code class="literal">G_FILE_ATTRIBUTE_TYPE_INT64</code></a> to <em class="parameter"><code>value</code></em>. 
If <em class="parameter"><code>attribute</code></em> is of a different type, this operation will fail.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>attribute</code></em> :</span></p></td>
<td>a string containing the attribute's name.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Basic-Types.html#guint64"><span class="type">guint64</span></a> containing the attribute's new value.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>a <a class="link" href="GFile.html#GFileQueryInfoFlags" title="enum GFileQueryInfoFlags"><span class="type">GFileQueryInfoFlags</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the <em class="parameter"><code>attribute</code></em> was successfully set, <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-mount-mountable"></a><h3>g_file_mount_mountable ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                g_file_mount_mountable              (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GMount.html#GMountMountFlags" title="enum GMountMountFlags"><span class="type">GMountMountFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GMountOperation.html" title="GMountOperation"><span class="type">GMountOperation</span></a> *mount_operation</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>
Mounts a file of type G_FILE_TYPE_MOUNTABLE.
Using <em class="parameter"><code>mount_operation</code></em>, you can request callbacks when, for instance, 
passwords are needed during authentication.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<p>
When the operation is finished, <em class="parameter"><code>callback</code></em> will be called. You can then call
<a class="link" href="GFile.html#g-file-mount-mountable-finish" title="g_file_mount_mountable_finish ()"><code class="function">g_file_mount_mountable_finish()</code></a> to get the result of the operation.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>flags affecting the operation</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>mount_operation</code></em> :</span></p></td>
<td>a <a class="link" href="GMountOperation.html" title="GMountOperation"><span class="type">GMountOperation</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to avoid user interaction.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> to call when the request is satisfied, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>the data to pass to callback function. <span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-mount-mountable-finish"></a><h3>g_file_mount_mountable_finish ()</h3>
<pre class="programlisting"><a class="link" href="GFile.html" title="GFile"><span class="returnvalue">GFile</span></a> *                  g_file_mount_mountable_finish  (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *result</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Finishes a mount operation. See <a class="link" href="GFile.html#g-file-mount-mountable" title="g_file_mount_mountable ()"><code class="function">g_file_mount_mountable()</code></a> for details.
</p>
<p>
Finish an asynchronous mount operation that was started 
with <a class="link" href="GFile.html#g-file-mount-mountable" title="g_file_mount_mountable ()"><code class="function">g_file_mount_mountable()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>result</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-unmount-mountable"></a><h3>g_file_unmount_mountable ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                g_file_unmount_mountable            (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GMount.html#GMountUnmountFlags" title="enum GMountUnmountFlags"><span class="type">GMountUnmountFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
<h3 class="title">Warning</h3>
<p><code class="literal">g_file_unmount_mountable</code> has been deprecated since version 2.22 and should not be used in newly-written code. Use <a class="link" href="GFile.html#g-file-unmount-mountable-with-operation" title="g_file_unmount_mountable_with_operation ()"><code class="function">g_file_unmount_mountable_with_operation()</code></a> instead.</p>
</div>
<p>
Unmounts a file of type G_FILE_TYPE_MOUNTABLE.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<p>
When the operation is finished, <em class="parameter"><code>callback</code></em> will be called. You can then call
<a class="link" href="GFile.html#g-file-unmount-mountable-finish" title="g_file_unmount_mountable_finish ()"><code class="function">g_file_unmount_mountable_finish()</code></a> to get the result of the operation.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>flags affecting the operation</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> to call when the request is satisfied, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>the data to pass to callback function. <span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-unmount-mountable-finish"></a><h3>g_file_unmount_mountable_finish ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_unmount_mountable_finish     (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *result</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
<h3 class="title">Warning</h3>
<p><code class="literal">g_file_unmount_mountable_finish</code> has been deprecated since version 2.22 and should not be used in newly-written code. Use <a class="link" href="GFile.html#g-file-unmount-mountable-with-operation-finish" title="g_file_unmount_mountable_with_operation_finish ()"><code class="function">g_file_unmount_mountable_with_operation_finish()</code></a> instead.</p>
</div>
<p>
Finishes an unmount operation, see <a class="link" href="GFile.html#g-file-unmount-mountable" title="g_file_unmount_mountable ()"><code class="function">g_file_unmount_mountable()</code></a> for details.
</p>
<p>
Finish an asynchronous unmount operation that was started 
with <a class="link" href="GFile.html#g-file-unmount-mountable" title="g_file_unmount_mountable ()"><code class="function">g_file_unmount_mountable()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>result</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the operation finished successfully. <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>
otherwise.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-unmount-mountable-with-operation"></a><h3>g_file_unmount_mountable_with_operation ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                g_file_unmount_mountable_with_operation
                                                        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GMount.html#GMountUnmountFlags" title="enum GMountUnmountFlags"><span class="type">GMountUnmountFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GMountOperation.html" title="GMountOperation"><span class="type">GMountOperation</span></a> *mount_operation</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>
Unmounts a file of type G_FILE_TYPE_MOUNTABLE.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<p>
When the operation is finished, <em class="parameter"><code>callback</code></em> will be called. You can then call
<a class="link" href="GFile.html#g-file-unmount-mountable-finish" title="g_file_unmount_mountable_finish ()"><code class="function">g_file_unmount_mountable_finish()</code></a> to get the result of the operation.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>flags affecting the operation</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>mount_operation</code></em> :</span></p></td>
<td>a <a class="link" href="GMountOperation.html" title="GMountOperation"><span class="type">GMountOperation</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to avoid user interaction.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> to call when the request is satisfied, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>the data to pass to callback function. <span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.22</p>
</div>
<hr>
<div class="refsect2">
<a name="g-file-unmount-mountable-with-operation-finish"></a><h3>g_file_unmount_mountable_with_operation_finish ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_unmount_mountable_with_operation_finish
                                                        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *result</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Finishes an unmount operation, see <a class="link" href="GFile.html#g-file-unmount-mountable-with-operation" title="g_file_unmount_mountable_with_operation ()"><code class="function">g_file_unmount_mountable_with_operation()</code></a> for details.
</p>
<p>
Finish an asynchronous unmount operation that was started
with <a class="link" href="GFile.html#g-file-unmount-mountable-with-operation" title="g_file_unmount_mountable_with_operation ()"><code class="function">g_file_unmount_mountable_with_operation()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>result</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the operation finished successfully. <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>
otherwise.</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.22</p>
</div>
<hr>
<div class="refsect2">
<a name="g-file-eject-mountable"></a><h3>g_file_eject_mountable ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                g_file_eject_mountable              (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GMount.html#GMountUnmountFlags" title="enum GMountUnmountFlags"><span class="type">GMountUnmountFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
<h3 class="title">Warning</h3>
<p><code class="literal">g_file_eject_mountable</code> has been deprecated since version 2.22 and should not be used in newly-written code. Use <a class="link" href="GFile.html#g-file-eject-mountable-with-operation" title="g_file_eject_mountable_with_operation ()"><code class="function">g_file_eject_mountable_with_operation()</code></a> instead.</p>
</div>
<p>
Starts an asynchronous eject on a mountable.  
When this operation has completed, <em class="parameter"><code>callback</code></em> will be called with
<em class="parameter"><code>user_user</code></em> data, and the operation can be finalized with 
<a class="link" href="GFile.html#g-file-eject-mountable-finish" title="g_file_eject_mountable_finish ()"><code class="function">g_file_eject_mountable_finish()</code></a>.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>flags affecting the operation</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> to call when the request is satisfied, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>the data to pass to callback function. <span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-eject-mountable-finish"></a><h3>g_file_eject_mountable_finish ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_eject_mountable_finish       (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *result</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
<h3 class="title">Warning</h3>
<p><code class="literal">g_file_eject_mountable_finish</code> has been deprecated since version 2.22 and should not be used in newly-written code. Use <a class="link" href="GFile.html#g-file-eject-mountable-with-operation-finish" title="g_file_eject_mountable_with_operation_finish ()"><code class="function">g_file_eject_mountable_with_operation_finish()</code></a> instead.</p>
</div>
<p>
Finishes an asynchronous eject operation started by 
<a class="link" href="GFile.html#g-file-eject-mountable" title="g_file_eject_mountable ()"><code class="function">g_file_eject_mountable()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>result</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the <em class="parameter"><code>file</code></em> was ejected successfully. <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>
otherwise.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-eject-mountable-with-operation"></a><h3>g_file_eject_mountable_with_operation ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                g_file_eject_mountable_with_operation
                                                        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GMount.html#GMountUnmountFlags" title="enum GMountUnmountFlags"><span class="type">GMountUnmountFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GMountOperation.html" title="GMountOperation"><span class="type">GMountOperation</span></a> *mount_operation</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>
Starts an asynchronous eject on a mountable.
When this operation has completed, <em class="parameter"><code>callback</code></em> will be called with
<em class="parameter"><code>user_user</code></em> data, and the operation can be finalized with
<a class="link" href="GFile.html#g-file-eject-mountable-with-operation-finish" title="g_file_eject_mountable_with_operation_finish ()"><code class="function">g_file_eject_mountable_with_operation_finish()</code></a>.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>flags affecting the operation</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>mount_operation</code></em> :</span></p></td>
<td>a <a class="link" href="GMountOperation.html" title="GMountOperation"><span class="type">GMountOperation</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to avoid user interaction.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> to call when the request is satisfied, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>the data to pass to callback function. <span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.22</p>
</div>
<hr>
<div class="refsect2">
<a name="g-file-eject-mountable-with-operation-finish"></a><h3>g_file_eject_mountable_with_operation_finish ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_eject_mountable_with_operation_finish
                                                        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *result</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Finishes an asynchronous eject operation started by
<a class="link" href="GFile.html#g-file-eject-mountable-with-operation" title="g_file_eject_mountable_with_operation ()"><code class="function">g_file_eject_mountable_with_operation()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>result</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the <em class="parameter"><code>file</code></em> was ejected successfully. <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>
otherwise.</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.22</p>
</div>
<hr>
<div class="refsect2">
<a name="g-file-start-mountable"></a><h3>g_file_start_mountable ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                g_file_start_mountable              (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GDrive.html#GDriveStartFlags" title="enum GDriveStartFlags"><span class="type">GDriveStartFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GMountOperation.html" title="GMountOperation"><span class="type">GMountOperation</span></a> *start_operation</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>
Starts a file of type G_FILE_TYPE_MOUNTABLE.
Using <em class="parameter"><code>start_operation</code></em>, you can request callbacks when, for instance,
passwords are needed during authentication.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<p>
When the operation is finished, <em class="parameter"><code>callback</code></em> will be called. You can then call
<a class="link" href="GFile.html#g-file-mount-mountable-finish" title="g_file_mount_mountable_finish ()"><code class="function">g_file_mount_mountable_finish()</code></a> to get the result of the operation.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>flags affecting the operation</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>start_operation</code></em> :</span></p></td>
<td>a <a class="link" href="GMountOperation.html" title="GMountOperation"><span class="type">GMountOperation</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to avoid user interaction.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> to call when the request is satisfied, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>the data to pass to callback function</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.22</p>
</div>
<hr>
<div class="refsect2">
<a name="g-file-start-mountable-finish"></a><h3>g_file_start_mountable_finish ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_start_mountable_finish       (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *result</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Finishes a start operation. See <a class="link" href="GFile.html#g-file-start-mountable" title="g_file_start_mountable ()"><code class="function">g_file_start_mountable()</code></a> for details.
</p>
<p>
Finish an asynchronous start operation that was started
with <a class="link" href="GFile.html#g-file-start-mountable" title="g_file_start_mountable ()"><code class="function">g_file_start_mountable()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>result</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the operation finished successfully. <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>
otherwise.</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.22</p>
</div>
<hr>
<div class="refsect2">
<a name="g-file-stop-mountable"></a><h3>g_file_stop_mountable ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                g_file_stop_mountable               (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GMount.html#GMountUnmountFlags" title="enum GMountUnmountFlags"><span class="type">GMountUnmountFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GMountOperation.html" title="GMountOperation"><span class="type">GMountOperation</span></a> *mount_operation</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>
Stops a file of type G_FILE_TYPE_MOUNTABLE.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<p>
When the operation is finished, <em class="parameter"><code>callback</code></em> will be called. You can then call
<a class="link" href="GFile.html#g-file-stop-mountable-finish" title="g_file_stop_mountable_finish ()"><code class="function">g_file_stop_mountable_finish()</code></a> to get the result of the operation.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>flags affecting the operation</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>mount_operation</code></em> :</span></p></td>
<td>a <a class="link" href="GMountOperation.html" title="GMountOperation"><span class="type">GMountOperation</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to avoid user interaction.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> to call when the request is satisfied, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>the data to pass to callback function</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.22</p>
</div>
<hr>
<div class="refsect2">
<a name="g-file-stop-mountable-finish"></a><h3>g_file_stop_mountable_finish ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_stop_mountable_finish        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *result</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Finishes an stop operation, see <a class="link" href="GFile.html#g-file-stop-mountable" title="g_file_stop_mountable ()"><code class="function">g_file_stop_mountable()</code></a> for details.
</p>
<p>
Finish an asynchronous stop operation that was started
with <a class="link" href="GFile.html#g-file-stop-mountable" title="g_file_stop_mountable ()"><code class="function">g_file_stop_mountable()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>result</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the operation finished successfully. <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>
otherwise.</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.22</p>
</div>
<hr>
<div class="refsect2">
<a name="g-file-poll-mountable"></a><h3>g_file_poll_mountable ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                g_file_poll_mountable               (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>
Polls a file of type G_FILE_TYPE_MOUNTABLE.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<p>
When the operation is finished, <em class="parameter"><code>callback</code></em> will be called. You can then call
<a class="link" href="GFile.html#g-file-mount-mountable-finish" title="g_file_mount_mountable_finish ()"><code class="function">g_file_mount_mountable_finish()</code></a> to get the result of the operation.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> to call when the request is satisfied, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>the data to pass to callback function</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.22</p>
</div>
<hr>
<div class="refsect2">
<a name="g-file-poll-mountable-finish"></a><h3>g_file_poll_mountable_finish ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_poll_mountable_finish        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *result</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Finishes a poll operation. See <a class="link" href="GFile.html#g-file-poll-mountable" title="g_file_poll_mountable ()"><code class="function">g_file_poll_mountable()</code></a> for details.
</p>
<p>
Finish an asynchronous poll operation that was polled
with <a class="link" href="GFile.html#g-file-poll-mountable" title="g_file_poll_mountable ()"><code class="function">g_file_poll_mountable()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>result</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the operation finished successfully. <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>
otherwise.</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.22</p>
</div>
<hr>
<div class="refsect2">
<a name="g-file-mount-enclosing-volume"></a><h3>g_file_mount_enclosing_volume ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                g_file_mount_enclosing_volume       (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *location</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GMount.html#GMountMountFlags" title="enum GMountMountFlags"><span class="type">GMountMountFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GMountOperation.html" title="GMountOperation"><span class="type">GMountOperation</span></a> *mount_operation</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>
Starts a <em class="parameter"><code>mount_operation</code></em>, mounting the volume that contains the file <em class="parameter"><code>location</code></em>. 
</p>
<p>
When this operation has completed, <em class="parameter"><code>callback</code></em> will be called with
<em class="parameter"><code>user_user</code></em> data, and the operation can be finalized with 
<a class="link" href="GFile.html#g-file-mount-enclosing-volume-finish" title="g_file_mount_enclosing_volume_finish ()"><code class="function">g_file_mount_enclosing_volume_finish()</code></a>.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>location</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>flags affecting the operation</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>mount_operation</code></em> :</span></p></td>
<td>a <a class="link" href="GMountOperation.html" title="GMountOperation"><span class="type">GMountOperation</span></a> or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to avoid user interaction.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> to call when the request is satisfied, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>the data to pass to callback function</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-mount-enclosing-volume-finish"></a><h3>g_file_mount_enclosing_volume_finish ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_mount_enclosing_volume_finish
                                                        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *location</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *result</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Finishes a mount operation started by <a class="link" href="GFile.html#g-file-mount-enclosing-volume" title="g_file_mount_enclosing_volume ()"><code class="function">g_file_mount_enclosing_volume()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>location</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>result</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful. If an error
has occurred, this function will return <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> and set <em class="parameter"><code>error</code></em>
appropriately if present.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-monitor-directory"></a><h3>g_file_monitor_directory ()</h3>
<pre class="programlisting"><a class="link" href="GFileMonitor.html" title="GFileMonitor"><span class="returnvalue">GFileMonitor</span></a> *            g_file_monitor_directory      (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileMonitorFlags" title="enum GFileMonitorFlags"><span class="type">GFileMonitorFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Obtains a directory monitor for the given file.
This may fail if directory monitoring is not supported.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned. 
</p>
<p>
Virtual: monitor_dir
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>a set of <a class="link" href="GFile.html#GFileMonitorFlags" title="enum GFileMonitorFlags"><span class="type">GFileMonitorFlags</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a <a class="link" href="GFileMonitor.html" title="GFileMonitor"><span class="type">GFileMonitor</span></a> for the given <em class="parameter"><code>file</code></em>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-monitor-file"></a><h3>g_file_monitor_file ()</h3>
<pre class="programlisting"><a class="link" href="GFileMonitor.html" title="GFileMonitor"><span class="returnvalue">GFileMonitor</span></a> *            g_file_monitor_file           (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileMonitorFlags" title="enum GFileMonitorFlags"><span class="type">GFileMonitorFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Obtains a file monitor for the given file. If no file notification
mechanism exists, then regular polling of the file is used.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>a set of <a class="link" href="GFile.html#GFileMonitorFlags" title="enum GFileMonitorFlags"><span class="type">GFileMonitorFlags</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a <a class="link" href="GFileMonitor.html" title="GFileMonitor"><span class="type">GFileMonitor</span></a> for the given <em class="parameter"><code>file</code></em>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-monitor"></a><h3>g_file_monitor ()</h3>
<pre class="programlisting"><a class="link" href="GFileMonitor.html" title="GFileMonitor"><span class="returnvalue">GFileMonitor</span></a> *            g_file_monitor                (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileMonitorFlags" title="enum GFileMonitorFlags"><span class="type">GFileMonitorFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Obtains a file or directory monitor for the given file, depending
on the type of the file.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>a set of <a class="link" href="GFile.html#GFileMonitorFlags" title="enum GFileMonitorFlags"><span class="type">GFileMonitorFlags</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a <a class="link" href="GFileMonitor.html" title="GFileMonitor"><span class="type">GFileMonitor</span></a> for the given <em class="parameter"><code>file</code></em>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.18</p>
</div>
<hr>
<div class="refsect2">
<a name="g-file-load-contents"></a><h3>g_file_load_contents ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_load_contents                (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><span class="type">char</span> **contents</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> *length</code></em>,
                                                         <em class="parameter"><code><span class="type">char</span> **etag_out</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Loads the content of the file into memory. The data is always 
zero-terminated, but this is not included in the resultant <em class="parameter"><code>length</code></em>.
The returned <em class="parameter"><code>content</code></em> should be freed with <a href="./../glib/glib/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> when no longer
needed.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>contents</code></em> :</span></p></td>
<td>a location to place the contents of the file. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> guint8][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=length]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>length</code></em> :</span></p></td>
<td>a location to place the length of the contents of the file,
or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the length is not needed. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>etag_out</code></em> :</span></p></td>
<td>a location to place the current entity tag for the file,
or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the entity tag is not needed. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the <em class="parameter"><code>file</code></em>'s contents were successfully loaded.
<a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if there were errors.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-load-contents-async"></a><h3>g_file_load_contents_async ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                g_file_load_contents_async          (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>
Starts an asynchronous load of the <em class="parameter"><code>file</code></em>'s contents.
</p>
<p>
For more details, see <a class="link" href="GFile.html#g-file-load-contents" title="g_file_load_contents ()"><code class="function">g_file_load_contents()</code></a> which is
the synchronous version of this call.
</p>
<p>
When the load operation has completed, <em class="parameter"><code>callback</code></em> will be called 
with <em class="parameter"><code>user</code></em> data. To finish the operation, call 
<a class="link" href="GFile.html#g-file-load-contents-finish" title="g_file_load_contents_finish ()"><code class="function">g_file_load_contents_finish()</code></a> with the <a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> returned by 
the <em class="parameter"><code>callback</code></em>.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> to call when the request is satisfied</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>the data to pass to callback function</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-load-contents-finish"></a><h3>g_file_load_contents_finish ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_load_contents_finish         (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><span class="type">char</span> **contents</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> *length</code></em>,
                                                         <em class="parameter"><code><span class="type">char</span> **etag_out</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Finishes an asynchronous load of the <em class="parameter"><code>file</code></em>'s contents. 
The contents are placed in <em class="parameter"><code>contents</code></em>, and <em class="parameter"><code>length</code></em> is set to the 
size of the <em class="parameter"><code>contents</code></em> string. The <em class="parameter"><code>content</code></em> should be freed with
<a href="./../glib/glib/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> when no longer needed. If <em class="parameter"><code>etag_out</code></em> is present, it will be 
set to the new entity tag for the <em class="parameter"><code>file</code></em>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>res</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>contents</code></em> :</span></p></td>
<td>a location to place the contents of the file. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> guint8][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=length]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>length</code></em> :</span></p></td>
<td>a location to place the length of the contents of the file,
or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the length is not needed. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>etag_out</code></em> :</span></p></td>
<td>a location to place the current entity tag for the file,
or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the entity tag is not needed. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the load was successful. If <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> and <em class="parameter"><code>error</code></em> is
present, it will be set appropriately.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-load-partial-contents-async"></a><h3>g_file_load_partial_contents_async ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                g_file_load_partial_contents_async  (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileReadMoreCallback" title="GFileReadMoreCallback ()"><span class="type">GFileReadMoreCallback</span></a> read_more_callback</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>
Reads the partial contents of a file. A <a class="link" href="GFile.html#GFileReadMoreCallback" title="GFileReadMoreCallback ()"><span class="type">GFileReadMoreCallback</span></a> should be 
used to stop reading from the file when appropriate, else this function
will behave exactly as <a class="link" href="GFile.html#g-file-load-contents-async" title="g_file_load_contents_async ()"><code class="function">g_file_load_contents_async()</code></a>. This operation 
can be finished by <a class="link" href="GFile.html#g-file-load-partial-contents-finish" title="g_file_load_partial_contents_finish ()"><code class="function">g_file_load_partial_contents_finish()</code></a>.
</p>
<p>
Users of this function should be aware that <em class="parameter"><code>user_data</code></em> is passed to 
both the <em class="parameter"><code>read_more_callback</code></em> and the <em class="parameter"><code>callback</code></em>.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>read_more_callback</code></em> :</span></p></td>
<td>a <a class="link" href="GFile.html#GFileReadMoreCallback" title="GFileReadMoreCallback ()"><span class="type">GFileReadMoreCallback</span></a> to receive partial data and to specify whether further data should be read.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> to call when the request is satisfied</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>the data to pass to the callback functions.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-load-partial-contents-finish"></a><h3>g_file_load_partial_contents_finish ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_load_partial_contents_finish (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><span class="type">char</span> **contents</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> *length</code></em>,
                                                         <em class="parameter"><code><span class="type">char</span> **etag_out</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Finishes an asynchronous partial load operation that was started
with <a class="link" href="GFile.html#g-file-load-partial-contents-async" title="g_file_load_partial_contents_async ()"><code class="function">g_file_load_partial_contents_async()</code></a>. The data is always 
zero-terminated, but this is not included in the resultant <em class="parameter"><code>length</code></em>.
The returned <em class="parameter"><code>content</code></em> should be freed with <a href="./../glib/glib/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> when no longer
needed.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>res</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>contents</code></em> :</span></p></td>
<td>a location to place the contents of the file. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> guint8][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=length]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>length</code></em> :</span></p></td>
<td>a location to place the length of the contents of the file,
or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the length is not needed. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>etag_out</code></em> :</span></p></td>
<td>a location to place the current entity tag for the file,
or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if the entity tag is not needed. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the load was successful. If <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> and <em class="parameter"><code>error</code></em> is
present, it will be set appropriately.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-replace-contents"></a><h3>g_file_replace_contents ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_replace_contents             (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *contents</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> length</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *etag</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> make_backup</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><span class="type">char</span> **new_etag</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Replaces the contents of <em class="parameter"><code>file</code></em> with <em class="parameter"><code>contents</code></em> of <em class="parameter"><code>length</code></em> bytes.
 
If <em class="parameter"><code>etag</code></em> is specified (not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>) any existing file must have that etag, or
the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-WRONG-ETAG:CAPS"><code class="literal">G_IO_ERROR_WRONG_ETAG</code></a> will be returned.
</p>
<p>
If <em class="parameter"><code>make_backup</code></em> is <a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, this function will attempt to make a backup of <em class="parameter"><code>file</code></em>.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned. 
</p>
<p>
The returned <em class="parameter"><code>new_etag</code></em> can be used to verify that the file hasn't changed the
next time it is saved over.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>contents</code></em> :</span></p></td>
<td>a string containing the new contents for <em class="parameter"><code>file</code></em>. <span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> guint8][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=length]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>length</code></em> :</span></p></td>
<td>the length of <em class="parameter"><code>contents</code></em> in bytes.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>etag</code></em> :</span></p></td>
<td>the old <a class="link" href="GFile.html#gfile-etag">entity tag</a>
for the document, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>make_backup</code></em> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a backup should be created.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>a set of <a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>new_etag</code></em> :</span></p></td>
<td>a location to a new <a class="link" href="GFile.html#gfile-etag">entity tag</a>
for the document. This should be freed with <a href="./../glib/glib/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> when no longer
needed, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>][<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if successful. If an error
has occurred, this function will return <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> and set <em class="parameter"><code>error</code></em>
appropriately if present.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-replace-contents-async"></a><h3>g_file_replace_contents_async ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                g_file_replace_contents_async       (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *contents</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> length</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *etag</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> make_backup</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>
Starts an asynchronous replacement of <em class="parameter"><code>file</code></em> with the given 
<em class="parameter"><code>contents</code></em> of <em class="parameter"><code>length</code></em> bytes. <em class="parameter"><code>etag</code></em> will replace the document's 
current entity tag.
</p>
<p>
When this operation has completed, <em class="parameter"><code>callback</code></em> will be called with
<em class="parameter"><code>user_user</code></em> data, and the operation can be finalized with 
<a class="link" href="GFile.html#g-file-replace-contents-finish" title="g_file_replace_contents_finish ()"><code class="function">g_file_replace_contents_finish()</code></a>.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned. 
</p>
<p>
If <em class="parameter"><code>make_backup</code></em> is <a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, this function will attempt to 
make a backup of <em class="parameter"><code>file</code></em>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>contents</code></em> :</span></p></td>
<td>string of contents to replace the file with. <span class="annotation">[<acronym title="Generics and defining elements of containers and arrays."><span class="acronym">element-type</span></acronym> guint8][<acronym title="Parameter points to an array of items."><span class="acronym">array</span></acronym> length=length]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>length</code></em> :</span></p></td>
<td>the length of <em class="parameter"><code>contents</code></em> in bytes.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>etag</code></em> :</span></p></td>
<td>a new <a class="link" href="GFile.html#gfile-etag">entity tag</a> for the <em class="parameter"><code>file</code></em>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>make_backup</code></em> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a backup should be created.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>a set of <a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> to call when the request is satisfied</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>the data to pass to callback function</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-replace-contents-finish"></a><h3>g_file_replace_contents_finish ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_replace_contents_finish      (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><span class="type">char</span> **new_etag</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Finishes an asynchronous replace of the given <em class="parameter"><code>file</code></em>. See
<a class="link" href="GFile.html#g-file-replace-contents-async" title="g_file_replace_contents_async ()"><code class="function">g_file_replace_contents_async()</code></a>. Sets <em class="parameter"><code>new_etag</code></em> to the new entity 
tag for the document, if present.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>res</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>new_etag</code></em> :</span></p></td>
<td>a location of a new <a class="link" href="GFile.html#gfile-etag">entity tag</a>
for the document. This should be freed with <a href="./../glib/glib/glib-Memory-Allocation.html#g-free"><code class="function">g_free()</code></a> when it is no
longer needed, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>. <span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on success, <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> on failure.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-copy-attributes"></a><h3>g_file_copy_attributes ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_copy_attributes              (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *source</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *destination</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCopyFlags" title="enum GFileCopyFlags"><span class="type">GFileCopyFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Copies the file attributes from <em class="parameter"><code>source</code></em> to <em class="parameter"><code>destination</code></em>. 
</p>
<p>
Normally only a subset of the file attributes are copied,
those that are copies in a normal file copy operation
(which for instance does not include e.g. owner). However
if <a class="link" href="GFile.html#G-FILE-COPY-ALL-METADATA:CAPS"><span class="type">G_FILE_COPY_ALL_METADATA</span></a> is specified in <em class="parameter"><code>flags</code></em>, then
all the metadata that is possible to copy is copied. This
is useful when implementing move by copy + delete source.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>source</code></em> :</span></p></td>
<td>a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> with attributes.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>destination</code></em> :</span></p></td>
<td>a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> to copy attributes to.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>a set of <a class="link" href="GFile.html#GFileCopyFlags" title="enum GFileCopyFlags"><span class="type">GFileCopyFlags</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the attributes were copied successfully, <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="g-file-create-readwrite"></a><h3>g_file_create_readwrite ()</h3>
<pre class="programlisting"><a class="link" href="GFileIOStream.html" title="GFileIOStream"><span class="returnvalue">GFileIOStream</span></a> *          g_file_create_readwrite        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Creates a new file and returns a stream for reading and writing to it.
The file must not already exist.
</p>
<p>
By default files created are generally readable by everyone,
but if you pass <a class="link" href="GFile.html#G-FILE-CREATE-PRIVATE:CAPS"><span class="type">G_FILE_CREATE_PRIVATE</span></a> in <em class="parameter"><code>flags</code></em> the file
will be made readable only to the current user, to the level that
is supported on the target filesystem.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<p>
If a file or directory with this name already exists the <a class="link" href="gio-GIOError.html#G-IO-ERROR-EXISTS:CAPS"><code class="literal">G_IO_ERROR_EXISTS</code></a>
error will be returned. Some file systems don't allow all file names,
and may return an <a class="link" href="gio-GIOError.html#G-IO-ERROR-INVALID-FILENAME:CAPS"><code class="literal">G_IO_ERROR_INVALID_FILENAME</code></a> error, and if the name
is too long, <a class="link" href="gio-GIOError.html#G-IO-ERROR-FILENAME-TOO-LONG:CAPS"><code class="literal">G_IO_ERROR_FILENAME_TOO_LONG</code></a> will be returned. Other errors
are possible too, and depend on what kind of filesystem the file is on.
</p>
<p>
Note that in many non-local file cases read and write streams are not
supported, so make sure you really need to do read and write streaming,
rather than just opening for reading or writing.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>a set of <a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>return location for a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a <a class="link" href="GFileIOStream.html" title="GFileIOStream"><span class="type">GFileIOStream</span></a> for the newly created file, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.22</p>
</div>
<hr>
<div class="refsect2">
<a name="g-file-create-readwrite-async"></a><h3>g_file_create_readwrite_async ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                g_file_create_readwrite_async       (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><span class="type">int</span> io_priority</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>
Asynchronously creates a new file and returns a stream for reading and
writing to it. The file must not already exist.
</p>
<p>
For more details, see <a class="link" href="GFile.html#g-file-create-readwrite" title="g_file_create_readwrite ()"><code class="function">g_file_create_readwrite()</code></a> which is
the synchronous version of this call.
</p>
<p>
When the operation is finished, <em class="parameter"><code>callback</code></em> will be called. You can then
call <a class="link" href="GFile.html#g-file-create-readwrite-finish" title="g_file_create_readwrite_finish ()"><code class="function">g_file_create_readwrite_finish()</code></a> to get the result of the operation.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>a set of <a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>io_priority</code></em> :</span></p></td>
<td>the <a class="link" href="gio-GIOScheduler.html#io-priority">I/O priority</a>
of the request</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> to call when the request is satisfied. <span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>the data to pass to callback function. <span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.22</p>
</div>
<hr>
<div class="refsect2">
<a name="g-file-create-readwrite-finish"></a><h3>g_file_create_readwrite_finish ()</h3>
<pre class="programlisting"><a class="link" href="GFileIOStream.html" title="GFileIOStream"><span class="returnvalue">GFileIOStream</span></a> *          g_file_create_readwrite_finish (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Finishes an asynchronous file create operation started with
<a class="link" href="GFile.html#g-file-create-readwrite-async" title="g_file_create_readwrite_async ()"><code class="function">g_file_create_readwrite_async()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>res</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a <a class="link" href="GFileIOStream.html" title="GFileIOStream"><span class="type">GFileIOStream</span></a> or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.22</p>
</div>
<hr>
<div class="refsect2">
<a name="g-file-open-readwrite"></a><h3>g_file_open_readwrite ()</h3>
<pre class="programlisting"><a class="link" href="GFileIOStream.html" title="GFileIOStream"><span class="returnvalue">GFileIOStream</span></a> *          g_file_open_readwrite          (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Opens an existing file for reading and writing. The result is
a <a class="link" href="GFileIOStream.html" title="GFileIOStream"><span class="type">GFileIOStream</span></a> that can be used to read and write the contents of the file.
</p>
<p>
If <em class="parameter"><code>cancellable</code></em> is not <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>, then the operation can be cancelled by
triggering the cancellable object from another thread. If the operation
was cancelled, the error <a class="link" href="gio-GIOError.html#G-IO-ERROR-CANCELLED:CAPS"><code class="literal">G_IO_ERROR_CANCELLED</code></a> will be returned.
</p>
<p>
If the file does not exist, the G_IO_ERROR_NOT_FOUND error will be returned.
If the file is a directory, the G_IO_ERROR_IS_DIRECTORY error will be returned.
Other errors are possible too, and depend on what kind of filesystem the file is on.
Note that in many non-local file cases read and write streams are not supported,
so make sure you really need to do read and write streaming, rather than
just opening for reading or writing.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>
<a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> to open</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>a <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a>. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a class="link" href="GFileIOStream.html" title="GFileIOStream"><span class="type">GFileIOStream</span></a> or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.22</p>
</div>
<hr>
<div class="refsect2">
<a name="g-file-open-readwrite-async"></a><h3>g_file_open_readwrite_async ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                g_file_open_readwrite_async         (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><span class="type">int</span> io_priority</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>
Asynchronously opens <em class="parameter"><code>file</code></em> for reading and writing.
</p>
<p>
For more details, see <a class="link" href="GFile.html#g-file-open-readwrite" title="g_file_open_readwrite ()"><code class="function">g_file_open_readwrite()</code></a> which is
the synchronous version of this call.
</p>
<p>
When the operation is finished, <em class="parameter"><code>callback</code></em> will be called. You can then call
<a class="link" href="GFile.html#g-file-open-readwrite-finish" title="g_file_open_readwrite_finish ()"><code class="function">g_file_open_readwrite_finish()</code></a> to get the result of the operation.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>io_priority</code></em> :</span></p></td>
<td>the <a class="link" href="gio-GIOScheduler.html#io-priority">I/O priority</a>
of the request.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> to call when the request is satisfied. <span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>the data to pass to callback function. <span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.22</p>
</div>
<hr>
<div class="refsect2">
<a name="g-file-open-readwrite-finish"></a><h3>g_file_open_readwrite_finish ()</h3>
<pre class="programlisting"><a class="link" href="GFileIOStream.html" title="GFileIOStream"><span class="returnvalue">GFileIOStream</span></a> *          g_file_open_readwrite_finish   (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Finishes an asynchronous file read operation started with
<a class="link" href="GFile.html#g-file-open-readwrite-async" title="g_file_open_readwrite_async ()"><code class="function">g_file_open_readwrite_async()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>res</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a <a class="link" href="GFileIOStream.html" title="GFileIOStream"><span class="type">GFileIOStream</span></a> or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.22</p>
</div>
<hr>
<div class="refsect2">
<a name="g-file-replace-readwrite"></a><h3>g_file_replace_readwrite ()</h3>
<pre class="programlisting"><a class="link" href="GFileIOStream.html" title="GFileIOStream"><span class="returnvalue">GFileIOStream</span></a> *          g_file_replace_readwrite       (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *etag</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> make_backup</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Returns an output stream for overwriting the file in readwrite mode,
possibly creating a backup copy of the file first. If the file doesn't
exist, it will be created.
</p>
<p>
For details about the behaviour, see <a class="link" href="GFile.html#g-file-replace" title="g_file_replace ()"><code class="function">g_file_replace()</code></a> which does the same
thing but returns an output stream only.
</p>
<p>
Note that in many non-local file cases read and write streams are not
supported, so make sure you really need to do read and write streaming,
rather than just opening for reading or writing.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>etag</code></em> :</span></p></td>
<td>an optional <a class="link" href="GFile.html#gfile-etag">entity tag</a> for the
current <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><span class="type">NULL</span></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>make_backup</code></em> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a backup should be created</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>a set of <a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>return location for a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a <a class="link" href="GFileIOStream.html" title="GFileIOStream"><span class="type">GFileIOStream</span></a> or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.22</p>
</div>
<hr>
<div class="refsect2">
<a name="g-file-replace-readwrite-async"></a><h3>g_file_replace_readwrite_async ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                g_file_replace_readwrite_async      (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code>const <span class="type">char</span> *etag</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> make_backup</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a> flags</code></em>,
                                                         <em class="parameter"><code><span class="type">int</span> io_priority</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> *cancellable</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> callback</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> user_data</code></em>);</pre>
<p>
Asynchronously overwrites the file in read-write mode, replacing the
contents, possibly creating a backup copy of the file first.
</p>
<p>
For more details, see <a class="link" href="GFile.html#g-file-replace-readwrite" title="g_file_replace_readwrite ()"><code class="function">g_file_replace_readwrite()</code></a> which is
the synchronous version of this call.
</p>
<p>
When the operation is finished, <em class="parameter"><code>callback</code></em> will be called. You can then
call <a class="link" href="GFile.html#g-file-replace-readwrite-finish" title="g_file_replace_readwrite_finish ()"><code class="function">g_file_replace_readwrite_finish()</code></a> to get the result of the operation.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>etag</code></em> :</span></p></td>
<td>an <a class="link" href="GFile.html#gfile-etag">entity tag</a> for the
current <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>, or NULL to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>make_backup</code></em> :</span></p></td>
<td>
<a href="./../glib/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if a backup should be created.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>flags</code></em> :</span></p></td>
<td>a set of <a class="link" href="GFile.html#GFileCreateFlags" title="enum GFileCreateFlags"><span class="type">GFileCreateFlags</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>io_priority</code></em> :</span></p></td>
<td>the <a class="link" href="gio-GIOScheduler.html#io-priority">I/O priority</a>
of the request.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellable</code></em> :</span></p></td>
<td>optional <a class="link" href="GCancellable.html" title="GCancellable"><span class="type">GCancellable</span></a> object, <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> to ignore. <span class="annotation">[<acronym title="NULL is ok, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>callback</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html#GAsyncReadyCallback" title="GAsyncReadyCallback ()"><span class="type">GAsyncReadyCallback</span></a> to call when the request is satisfied. <span class="annotation">[<acronym title="The callback is valid until first called."><span class="acronym">scope async</span></acronym>]</span>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>the data to pass to callback function. <span class="annotation">[<acronym title="This parameter is a 'user_data', for callbacks; many bindings can pass NULL here."><span class="acronym">closure</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.22</p>
</div>
<hr>
<div class="refsect2">
<a name="g-file-replace-readwrite-finish"></a><h3>g_file_replace_readwrite_finish ()</h3>
<pre class="programlisting"><a class="link" href="GFileIOStream.html" title="GFileIOStream"><span class="returnvalue">GFileIOStream</span></a> *          g_file_replace_readwrite_finish
                                                        (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>,
                                                         <em class="parameter"><code><a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a> *res</code></em>,
                                                         <em class="parameter"><code><a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
<p>
Finishes an asynchronous file replace operation started with
<a class="link" href="GFile.html#g-file-replace-readwrite-async" title="g_file_replace_readwrite_async ()"><code class="function">g_file_replace_readwrite_async()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>input <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>res</code></em> :</span></p></td>
<td>a <a class="link" href="GAsyncResult.html" title="GAsyncResult"><span class="type">GAsyncResult</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
<td>a <a href="./../glib/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a <a class="link" href="GFileIOStream.html" title="GFileIOStream"><span class="type">GFileIOStream</span></a>, or <a href="./../glib/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> on error.
Free the returned object with <a href="./../gobject/gobject/gobject-The-Base-Object-Type.html#g-object-unref"><code class="function">g_object_unref()</code></a>. <span class="annotation">[<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.22</p>
</div>
<hr>
<div class="refsect2">
<a name="g-file-supports-thread-contexts"></a><h3>g_file_supports_thread_contexts ()</h3>
<pre class="programlisting"><a href="./../glib/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            g_file_supports_thread_contexts     (<em class="parameter"><code><a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a> *file</code></em>);</pre>
<p>
Checks if <em class="parameter"><code>file</code></em> supports <GTKDOCLINK HREF="g-main-context-push-thread-default-context">thread-default
contexts</GTKDOCLINK>. If this returns <a href="./../glib/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>, you cannot perform
asynchronous operations on <em class="parameter"><code>file</code></em> in a thread that has a
thread-default context.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>file</code></em> :</span></p></td>
<td>a <a class="link" href="GFile.html" title="GFile"><span class="type">GFile</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>Whether or not <em class="parameter"><code>file</code></em> supports thread-default contexts.</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.22</p>
</div>
</div>
<div class="refsect1">
<a name="GFile.see-also"></a><h2>See Also</h2>
<a class="link" href="GFileInfo.html" title="GFileInfo"><span class="type">GFileInfo</span></a>, <a class="link" href="GFileEnumerator.html" title="GFileEnumerator"><span class="type">GFileEnumerator</span></a>
</div>
</div>
<div class="footer">
<hr>
          Generated by GTK-Doc V1.17</div>
</body>
</html>